Syntax with copy down and copying a block

Posted on 2006-07-17
Last Modified: 2010-04-30
Excel VBA

I am trying to
1) copy D25 and copy down where Column E data ends
2) Then Copy start in D25 through Column J where data ends
 And put into a new worksheet starting A1.  
           D           E            F           G      H            I        J
25      2805      11111     11111      1111      1111       111    111      
26                   11111     11111      1111      1111       111    111      
27                  11111     11111      1111       1111      111    111      
I am having trouble with syntax of the following piece of code.

Dim r
  r = Range("E65536").End(xlUp).Row
  Range("D25").Resize(r, 1).FillDown

Set rngToCopy = Sheets("Data input sheet").Cells(Rows.Count, "D").End(xlUp).Offset(25, 4)

Any help would greatly be appreciated!

Here is the full piece
Private Sub cmdTransferToSRP_Click()
'Copy Data and transfer to New Workbook
Dim rngToCopy As Range
Dim rngToPaste As Range

Dim r
  r = Range("E65536").End(xlUp).Row
  Range("D25").Resize(r, 1).FillDown

Set rngToCopy = Sheets("Data input sheet").Cells(Rows.Count, "D").End(xlUp).Offset(25, 4)
'Open new workbook to create text file


    Application.CutCopyMode = False
 Application.CutCopyMode = False
Question by:ca1358
Welcome to Experts Exchange

Add your voice to the tech community where 5M+ people just like you are talking about what matters.

  • Help others & share knowledge
  • Earn cash & points
  • Learn & ask questions
  • 2

Author Comment

ID: 17125173
Ok got the rngToCopy to work.

Set rngToCopy = Range("D25:J" & Cells(Rows.Count, "D").End(xlUp).Row)

Now need to figure out
Test Data right now is D25:J37 with D25 having on "2805" and D26 on down blank but when I run the code for some reason the "2805" in D25 is copying down to D61 and not stop in D37.  Can someone tell me why?

Dim r
  r = Range("E65536").End(xlUp).Row
  Range("D25").Resize(r, 1).FillDown

Author Comment

ID: 17131067
Here is the answer- you can close this.  

Dim r
  r = Range("E65536").End(xlUp).Row
  Range("D25:D" & r).FillDown

Set rngToCopy = Range("D25:J" & Cells(Rows.Count, "D").End(xlUp).Row)

Thank you.

Accepted Solution

EE_AutoDeleter earned 0 total points
ID: 17279613
Because you have presented a solution to your own problem which may be helpful to future searches, this question is now PAQed and your points have been refunded.


Featured Post

Online Training Solution

Drastically shorten your training time with WalkMe's advanced online training solution that Guides your trainees to action. Forget about retraining and skyrocket knowledge retention rates.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

The debugging module of the VB 6 IDE can be accessed by way of the Debug menu item. That menu item can normally be found in the IDE's main menu line as shown in this picture.   There is also a companion Debug Toolbar that looks like the followin…
This article describes some techniques which will make your VBA or Visual Basic Classic code easier to understand and maintain, whether by you, your replacement, or another Experts-Exchange expert.
Get people started with the process of using Access VBA to control Excel using automation, Microsoft Access can control other applications. An example is the ability to programmatically talk to Excel. Using automation, an Access application can laun…
This lesson covers basic error handling code in Microsoft Excel using VBA. This is the first lesson in a 3-part series that uses code to loop through an Excel spreadsheet in VBA and then fix errors, taking advantage of error handling code. This l…
Suggested Courses
Course of the Month5 days, 1 hour left to enroll

635 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