Home |
Search |
Today's Posts |
|
#1
![]()
Posted to microsoft.public.excel.programming
|
|||
|
|||
![]()
Hi,
I am trying to write a macro that copy data from one wksheet to another master wksheet that i have. These masterwksheet as the names goes, has been used for record tracking for years. How do i find the last unused rows of that excelsheet and paste the copied data(from the new wksheet) and paste it to that unused row.? i tried with the following but it does not go to the last unused range.Rather it points to no where. can someone help to see if my script was wrong below: Cells.Select Selection.Copy 'To count the number of used rows and paste data to a new empty row. nNewRow = ActiveSheet.UsedRange.Rows.Count + ActiveSheet.UsedRange.Row LastCell = Cells(Rows.Count, "A").End(xlUp) Workbooks.Open Filename:="G:\Asia\Product\Operations\ML-Part Adjustments\QtyCostXfer Log.xls" 'This is the mastersheet. Windows("QtyCostXfer Log.xls").Activate Cells(nNewRow, 2).Select 'Does not work.It fails here. Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _ :=False, Transpose:=False |
#2
![]()
Posted to microsoft.public.excel.programming
|
|||
|
|||
![]()
Once you open the mastersheet, that is when you need to find th last
used row. If the same column is always used, you could do something like: lastRow = Range("A65536").End(xlUp).Row -or- lastRow = Cells(65536, 1).End(xlUp).Row If the data can be placed is different places throughout the sheet and there is no set column that will always contain information, you could use: lastRow = ActiveSheet.UsedRange.Rows.Count -or- lastRow = Cells.Find(What:="*", SearchOrder:=xlByRows, _ SearchDirection:=xlPrevious).Row HTH -Jeff- Junior728 wrote: Hi, I am trying to write a macro that copy data from one wksheet to another master wksheet that i have. These masterwksheet as the names goes, has been used for record tracking for years. How do i find the last unused rows of that excelsheet and paste the copied data(from the new wksheet) and paste it to that unused row.? i tried with the following but it does not go to the last unused range.Rather it points to no where. can someone help to see if my script was wrong below: Cells.Select Selection.Copy 'To count the number of used rows and paste data to a new empty row. nNewRow = ActiveSheet.UsedRange.Rows.Count + ActiveSheet.UsedRange.Row LastCell = Cells(Rows.Count, "A").End(xlUp) Workbooks.Open Filename:="G:\Asia\Product\Operations\ML-Part Adjustments\QtyCostXfer Log.xls" 'This is the mastersheet. Windows("QtyCostXfer Log.xls").Activate Cells(nNewRow, 2).Select 'Does not work.It fails here. Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _ :=False, Transpose:=False |
#3
![]()
Posted to microsoft.public.excel.programming
|
|||
|
|||
![]()
Sub SelectUnusedRow()
ActiveSheet.Range("A" & GetLastCell.Row).Select End Sub Public Function GetLastCell() As Range Dim lRow, lCol As Long lRow = GetLastRow lCol = GetLastCol Set GetLastCell = Cells(lRow, lCol) End Function Public Function GetLastRow() As Long Dim l, lRow, lCell As Long For l = 1 To xlLastCol lCell = Cells(xlLastRow, l).End(xlUp).Row If lCell lRow Then lRow = lCell Next l GetLastRow = lRow End Function Public Function GetLastCol() As Long Dim l, lCol, lCell As Long For l = 1 To xlLastRow lCell = Cells(l, xlLastCol).End(xlToLeft).Column If lCell lCol Then lCol = lCell Next l GetLastCol = lCol End Function |
#4
![]()
Posted to microsoft.public.excel.programming
|
|||
|
|||
![]()
Can you pick out a column that's always got something in it if that row is used?
I used column x in this sample: Dim NextRow as long with worksheets("summarynamehere") nextrow = .cells(.rows.count,"x").end(xlup).row + 1 end with Then I can use something like: somerangetocopy.copy _ destination:=worksheets("summarynamehere").cells(n extrow,"A") To paste into column A of the nextrow. Junior728 wrote: Hi, I am trying to write a macro that copy data from one wksheet to another master wksheet that i have. These masterwksheet as the names goes, has been used for record tracking for years. How do i find the last unused rows of that excelsheet and paste the copied data(from the new wksheet) and paste it to that unused row.? i tried with the following but it does not go to the last unused range.Rather it points to no where. can someone help to see if my script was wrong below: Cells.Select Selection.Copy 'To count the number of used rows and paste data to a new empty row. nNewRow = ActiveSheet.UsedRange.Rows.Count + ActiveSheet.UsedRange.Row LastCell = Cells(Rows.Count, "A").End(xlUp) Workbooks.Open Filename:="G:\Asia\Product\Operations\ML-Part Adjustments\QtyCostXfer Log.xls" 'This is the mastersheet. Windows("QtyCostXfer Log.xls").Activate Cells(nNewRow, 2).Select 'Does not work.It fails here. Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _ :=False, Transpose:=False -- Dave Peterson |
Reply |
Thread Tools | Search this Thread |
Display Modes | |
|
|
![]() |
||||
Thread | Forum | |||
SUMPRODUCT can I use to get data from 2 worksheets in same wkBK | Excel Discussion (Misc queries) | |||
How do I copy records with specific text from one wkbk to another | Excel Worksheet Functions | |||
Excel cut/Paste Problem: Year changes after data is copy and paste | Excel Discussion (Misc queries) | |||
Copy paste WkBk/sheet 1 to multiple wkbks/sheets | Excel Programming | |||
Copy Mult. Wkshts Into Single Wkbk | Excel Programming |