Reply
 
LinkBack Thread Tools Search this Thread Display Modes
  #1   Report Post  
Posted to microsoft.public.excel.programming
external usenet poster
 
Posts: 2
Default Creating a variable range in Visual Basic

I've created a macro that will filter specific data from a sheet and copy
that filtered data to another sheet for a "watchlist". There are multiple
sheets to be filtered, and I'd like to be able to have the copied information
paste in at the end of the previous data on the "watchlist" sheet. I'm not
really good with Visual Basic, but can usually muddle my way through. Is
there code I can use to make the range variable, so the info will paste where
I need it to?
  #2   Report Post  
Posted to microsoft.public.excel.programming
external usenet poster
 
Posts: 1,565
Default Creating a variable range in Visual Basic

Add this near the beginning of your existing macro.

Dim lr As Long, sh2 As Worksheet
Set sh2 = Sheets("watchlist") 'Set the receiving sht to a variable
' The next line finds the last cell with data in col A and adds 1
lr = sh2.Cells(Rows.Count, 1).End(xlUp).Row + 1
'Your existing code here
Selection.Copy sh2.Range("A" & lr)

That last line can be modified. I used Selection because the actual code
being currently used was not posted, But that is the line that will put the
data on the "watchlist" sheet in the next blank cell of column A and will
post the entire copied range..


"Deby" wrote in message
...
I've created a macro that will filter specific data from a sheet and copy
that filtered data to another sheet for a "watchlist". There are
multiple
sheets to be filtered, and I'd like to be able to have the copied
information
paste in at the end of the previous data on the "watchlist" sheet. I'm
not
really good with Visual Basic, but can usually muddle my way through. Is
there code I can use to make the range variable, so the info will paste
where
I need it to?



  #3   Report Post  
Posted to microsoft.public.excel.programming
external usenet poster
 
Posts: 2
Default Creating a variable range in Visual Basic

This is the code that was created with the macro by using a criteria and
extract range (works better for the info requested):

Rows("21:3039").Select
Selection.Delete Shift:=xlUp
Range("A13").Select
Range("AR").AdvancedFilter Action:=xlFilterCopy, CriteriaRange:=Range( _
"A6:U8"), CopyToRange:=Range("A20:S20"), Unique:=False
Rows("21:21").Select
Selection.Insert Shift:=xlDown
Selection.ClearFormats
Range("A22").Select
Selection.CurrentRegion.Select
Selection.Copy
Sheets("Watchlist").Select
Range("A4").Select
Selection.End(xlDown).Select
Range("A6").Select
ActiveSheet.Paste
Sheets("Criteria-Extract").Select
Rows("21:21").Select
ActiveSheet.Next.Select
ActiveSheet.Next.Select
ActiveSheet.Next.Select
Sheets("Criteria-Extract").Select
Rows("21:4084").Select
Application.CutCopyMode = False
Selection.Delete Shift:=xlUp
Range("A13").Select
Range("MT").AdvancedFilter Action:=xlFilterCopy, CriteriaRange:=Range( _
"A6:U8"), CopyToRange:=Range("A20:S20"), Unique:=False
Rows("21:21").Select
Selection.Insert Shift:=xlDown
Selection.ClearFormats
Range("A22").Select
Selection.CurrentRegion.Select
Selection.Copy
Sheets("Watchlist").Select
Range("A4").Select
Selection.End(xlDown).Select
Range("A20").Select
ActiveSheet.Paste
Sheets("Criteria-Extract").Select

Thanks!!!

"JLGWhiz" wrote:

Add this near the beginning of your existing macro.

Dim lr As Long, sh2 As Worksheet
Set sh2 = Sheets("watchlist") 'Set the receiving sht to a variable
' The next line finds the last cell with data in col A and adds 1
lr = sh2.Cells(Rows.Count, 1).End(xlUp).Row + 1
'Your existing code here
Selection.Copy sh2.Range("A" & lr)

That last line can be modified. I used Selection because the actual code
being currently used was not posted, But that is the line that will put the
data on the "watchlist" sheet in the next blank cell of column A and will
post the entire copied range..


"Deby" wrote in message
...
I've created a macro that will filter specific data from a sheet and copy
that filtered data to another sheet for a "watchlist". There are
multiple
sheets to be filtered, and I'd like to be able to have the copied
information
paste in at the end of the previous data on the "watchlist" sheet. I'm
not
really good with Visual Basic, but can usually muddle my way through. Is
there code I can use to make the range variable, so the info will paste
where
I need it to?



.

Reply
Thread Tools Search this Thread
Search this Thread:

Advanced Search
Display Modes

Posting Rules

Smilies are On
[IMG] code is On
HTML code is Off
Trackbacks are On
Pingbacks are On
Refbacks are On


Similar Threads
Thread Thread Starter Forum Replies Last Post
Creating a Visual Basic Macro Clarence Excel Discussion (Misc queries) 1 March 24th 10 08:06 PM
setting variable direction in visual basic blkane Excel Programming 4 January 21st 08 06:38 PM
Creating a folder using Visual Basic HELP!!! DanMsoeEE Excel Programming 1 July 2nd 07 07:46 PM
VBE (visual Basic Editor) variable Hellboy Excel Programming 2 July 10th 05 11:39 PM
Visual Basic Range variable Andrew Johnson Excel Programming 2 August 25th 03 05:18 PM


All times are GMT +1. The time now is 03:21 PM.

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Copyright ©2004-2024 ExcelBanter.
The comments are property of their posters.
 

About Us

"It's about Microsoft Excel"