carsolemons
New Member
- Joined
- Aug 19, 2013
- Messages
- 3
Hello,
I'm new to VBA. I have finished a subroutine that allows me to press a button to run Macro1 that will open a dialogue box to select FileB (that contains data I want to import). Right now, it will import that data (always B4:B20) from Workbook1 and insert it into Workbook2.
The help I need:
I would like to adjust this macro so that each time it is run the imported data won't replace into one column but instead be inserted into the next empty column. i.e. Right now the first run places it into B4:B20 in Workbook 2, and I want the 2nd, 3rd, etc times it's run to place the data in column C, then D, etc.
This is what I have so far, but it only does it for the first piece of data. I want all 16 entries.
Thanks for any help!
Sub Macro1()
'
' Macro1 Macro
'
'
Dim customerBook As Workbook
Dim filter As String
Dim caption As String
Dim customerFilename As String
Dim customerWorkbook As Workbook
Dim targetWorkbook As Workbook
Set targetWorkbook = Application.ActiveWorkbook
filter = "Text files (*.xlsx),*.xlsx"
caption = "Please Select an input file "
customerFilename = Application.GetOpenFilename(filter, , caption)
Set customerWorkbook = Application.Workbooks.Open(customerFilename)
Dim targetSheet As Worksheet
Set targetSheet = targetWorkbook.Worksheets(1)
Dim sourceSheet As Worksheet
Set sourceSheet = customerWorkbook.Worksheets(1)
targetSheet.Range("B4:B20").Range("IV1").End(xlToLeft).Offset(0, 1).Value = sourceSheet.Range("B4:B20").Value
customerWorkbook.Close
End Sub
I'm new to VBA. I have finished a subroutine that allows me to press a button to run Macro1 that will open a dialogue box to select FileB (that contains data I want to import). Right now, it will import that data (always B4:B20) from Workbook1 and insert it into Workbook2.
The help I need:
I would like to adjust this macro so that each time it is run the imported data won't replace into one column but instead be inserted into the next empty column. i.e. Right now the first run places it into B4:B20 in Workbook 2, and I want the 2nd, 3rd, etc times it's run to place the data in column C, then D, etc.
This is what I have so far, but it only does it for the first piece of data. I want all 16 entries.
Thanks for any help!
Sub Macro1()
'
' Macro1 Macro
'
'
Dim customerBook As Workbook
Dim filter As String
Dim caption As String
Dim customerFilename As String
Dim customerWorkbook As Workbook
Dim targetWorkbook As Workbook
Set targetWorkbook = Application.ActiveWorkbook
filter = "Text files (*.xlsx),*.xlsx"
caption = "Please Select an input file "
customerFilename = Application.GetOpenFilename(filter, , caption)
Set customerWorkbook = Application.Workbooks.Open(customerFilename)
Dim targetSheet As Worksheet
Set targetSheet = targetWorkbook.Worksheets(1)
Dim sourceSheet As Worksheet
Set sourceSheet = customerWorkbook.Worksheets(1)
targetSheet.Range("B4:B20").Range("IV1").End(xlToLeft).Offset(0, 1).Value = sourceSheet.Range("B4:B20").Value
customerWorkbook.Close
End Sub