copy range to another sheet problem

Posted on 2016-11-10
Last Modified: 2016-11-10
I have been using the below to copy data from one sheet to another but in my current spreadsheet it is not only copying the data in the range but is going right to the end of the spreadsheet. i.e. my range might be AG2 – AL40 but it copies from AG2 – AL1048576

Obviously the range will change daily so it will be AG2 – AL??

Sheets("Turnover").Range(Range("AG2"), Cells.SpecialCells(xlCellTypeLastCell)).Copy
Sheets("Consolidated").Range("D" & Cells.Rows.Count).End(xlUp).Offset(1).PasteSpecial xlPasteValues

Can an expert assist me on this please
Question by:Jagwarman
LVL 33

Accepted Solution

Norie earned 250 total points
ID: 41882197
With Sheets("Turnover")
    .Range(.Range("AG2"), .Range("AL" & Rows.Count).End(xlUp)).Copy
End With

Sheets("Consolidated").Range("D" & Cells.Rows.Count).End(xlUp).Offset(1).PasteSpecial xlPasteValues

Open in new window

LVL 48

Assisted Solution

Rgonzo1971 earned 250 total points
ID: 41882198

pls try
 Sheets("Turnover").Range(Range("AG2"), Cells(Rows.Count, "AL").End(xlUp)).Copy
 Sheets("Consolidated").Range("D" & Cells.Rows.Count).End(xlUp).Offset(1).PasteSpecial xlPasteValues
 Sheets("Turnover").Range(Range("AG2"), Cells(Rows.Count, "AG").End(xlUp).Offset(,5).Copy
 Sheets("Consolidated").Range("D" & Cells.Rows.Count).End(xlUp).Offset(1).PasteSpecial xlPasteValues

Open in new window


Author Closing Comment

ID: 41882219
Brilliant many thanks. Both equal But I am forced to select one as Best.
LVL 31

Expert Comment

by:Rob Henson
ID: 41882223
It looks like your used range has got messed up. This can happen for a number of reasons but is usually easily solved.

The above amendments to your code will ensure the correct area is copied but it is still worth clearing the Used Range setting otherwise it could affect file size and performance.

On the sheet where you are encountering the issue press End then Home. The cursor should go to the last cell, ie bottom right of the data. If it goes to row 1048576 or beyond the row expected that shows the used range is corrupt (strong word but not drastic really).

Manually put the cursor in column A and the row below where the data ends. Press and hold Shift and press End then Home. This will highlight the surplus rows below the data. Remove those rows by right clicking and choose Delete, select Option for Delete Entire row and click OK. Go back to the top of the sheet, Save and Close the file. Re-open and test to see if End then Home now goes to the last expected row.

Rob H

Featured Post

Find Ransomware Secrets With All-Source Analysis

Ransomware has become a major concern for organizations; its prevalence has grown due to past successes achieved by threat actors. While each ransomware variant is different, we’ve seen some common tactics and trends used among the authors of the malware.

Join & Write a Comment

Sparklines have been introduced with Excel 2010 and are a useful tool for creating small in-cell charts, used for example in dashboards. Excel 2010 offers three different types of Sparklines: Line, Column and Win/Loss. What it does not offer is a…
Approximate matching with VLOOKUP and MATCH seems to me to be a greatly under-used technique, and one which is vital for getting good performance out of large lookups. Until recently I would always have advised using an exact match for simplicity an…
The viewer will learn how to create a normally distributed random variable in Excel, use a normal distribution to simulate the return on an investment over a period of years, Create a Monte Carlo simulation using a normal random variable, and calcul…
This Micro Tutorial will demonstrate the scrolling table in Microsoft Excel using the INDEX function.

705 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question

Need Help in Real-Time?

Connect with top rated Experts

21 Experts available now in Live!

Get 1:1 Help Now