Home |
Search |
Today's Posts |
|
#1
![]()
Posted to microsoft.public.excel.programming
|
|||
|
|||
![]()
I need to combine column a and b in a macro that I can run on multiple
worksheets with different amounts of rows. I believe I need to create a new column, paste the combined values using (=a1&""&b1), in the new column, and then delete the two old columns. This I can do, but my problem comes when I try to run the same macro on a worksheet that contains more rows then the original one. There must be a way to do this. For instance, if there are 100 columns in the orginal worksheet where I created the macro, then if there are 120 columns, the macro is only combining 1-100, 101- 120. Please help a poor frustrated soul! |
#2
![]()
Posted to microsoft.public.excel.programming
|
|||
|
|||
![]()
Sub AA()
Dim rng as Range Set rng = Range(Cells(1,1),Cells(rows.count,1).End(xlup)) rng.offset(0,2).Formula = "=a1&""""&b1" rng.offset(0,2).formula = rng.offset(0,2).Value rng.Resize(,2).Entirecolumn.Delete end Sub "Rob" wrote in message ... I need to combine column a and b in a macro that I can run on multiple worksheets with different amounts of rows. I believe I need to create a new column, paste the combined values using (=a1&""&b1), in the new column, and then delete the two old columns. This I can do, but my problem comes when I try to run the same macro on a worksheet that contains more rows then the original one. There must be a way to do this. For instance, if there are 100 columns in the orginal worksheet where I created the macro, then if there are 120 columns, the macro is only combining 1-100, 101- 120. Please help a poor frustrated soul! |
#3
![]()
Posted to microsoft.public.excel.programming
|
|||
|
|||
![]()
Tom, very helpful!!! Almost there. Your macro is deleting column C. I need
to keep C. Can you help? "Tom Ogilvy" wrote: Sub AA() Dim rng as Range Set rng = Range(Cells(1,1),Cells(rows.count,1).End(xlup)) rng.offset(0,2).Formula = "=a1&""""&b1" rng.offset(0,2).formula = rng.offset(0,2).Value rng.Resize(,2).Entirecolumn.Delete end Sub "Rob" wrote in message ... I need to combine column a and b in a macro that I can run on multiple worksheets with different amounts of rows. I believe I need to create a new column, paste the combined values using (=a1&""&b1), in the new column, and then delete the two old columns. This I can do, but my problem comes when I try to run the same macro on a worksheet that contains more rows then the original one. There must be a way to do this. For instance, if there are 100 columns in the orginal worksheet where I created the macro, then if there are 120 columns, the macro is only combining 1-100, 101- 120. Please help a poor frustrated soul! |
#4
![]()
Posted to microsoft.public.excel.programming
|
|||
|
|||
![]()
In contrast, it ran fine for me and did exactly what you asked for: Once
again Sub AA() Set rng = Range(Cells(1, 1), Cells(Rows.Count, 1).End(xlUp)) rng.Offset(0, 2).Formula = "=a1&""""&b1" rng.Offset(0, 2).Formula = rng.Offset(0, 2).Value rng.Resize(, 2).EntireColumn.Delete End Sub Do you have merged cells? -- Regards, Tom Ogilvy "Rob" wrote in message ... Tom, very helpful!!! Almost there. Your macro is deleting column C. I need to keep C. Can you help? "Tom Ogilvy" wrote: Sub AA() Dim rng as Range Set rng = Range(Cells(1,1),Cells(rows.count,1).End(xlup)) rng.offset(0,2).Formula = "=a1&""""&b1" rng.offset(0,2).formula = rng.offset(0,2).Value rng.Resize(,2).Entirecolumn.Delete end Sub "Rob" wrote in message ... I need to combine column a and b in a macro that I can run on multiple worksheets with different amounts of rows. I believe I need to create a new column, paste the combined values using (=a1&""&b1), in the new column, and then delete the two old columns. This I can do, but my problem comes when I try to run the same macro on a worksheet that contains more rows then the original one. There must be a way to do this. For instance, if there are 100 columns in the orginal worksheet where I created the macro, then if there are 120 columns, the macro is only combining 1-100, 101- 120. Please help a poor frustrated soul! |
#5
![]()
Posted to microsoft.public.excel.programming
|
|||
|
|||
![]()
Tom,
Your line: rng.Offset(0, 2).Formula = "=a1&""""&b1" overwrites the existing column C. Perhaps Set rng = Range(Cells(1, 1), Cells(Rows.Count, 1).End(xlUp)) rng.EntireColumn.Insert rng.Offset(0, -1).Formula = "=B1&"" ""&C1" rng.Offset(0, -1).Formula = rng.Offset(0, -1).Value rng.Resize(, 2).EntireColumn.Delete HTH, Bernie MS Excel MVP "Tom Ogilvy" wrote in message ... In contrast, it ran fine for me and did exactly what you asked for: Once again Sub AA() Set rng = Range(Cells(1, 1), Cells(Rows.Count, 1).End(xlUp)) rng.Offset(0, 2).Formula = "=a1&""""&b1" rng.Offset(0, 2).Formula = rng.Offset(0, 2).Value rng.Resize(, 2).EntireColumn.Delete End Sub Do you have merged cells? -- Regards, Tom Ogilvy "Rob" wrote in message ... Tom, very helpful!!! Almost there. Your macro is deleting column C. I need to keep C. Can you help? "Tom Ogilvy" wrote: Sub AA() Dim rng as Range Set rng = Range(Cells(1,1),Cells(rows.count,1).End(xlup)) rng.offset(0,2).Formula = "=a1&""""&b1" rng.offset(0,2).formula = rng.offset(0,2).Value rng.Resize(,2).Entirecolumn.Delete end Sub "Rob" wrote in message ... I need to combine column a and b in a macro that I can run on multiple worksheets with different amounts of rows. I believe I need to create a new column, paste the combined values using (=a1&""&b1), in the new column, and then delete the two old columns. This I can do, but my problem comes when I try to run the same macro on a worksheet that contains more rows then the original one. There must be a way to do this. For instance, if there are 100 columns in the orginal worksheet where I created the macro, then if there are 120 columns, the macro is only combining 1-100, 101- 120. Please help a poor frustrated soul! |
#6
![]()
Posted to microsoft.public.excel.programming
|
|||
|
|||
![]()
He said Deletes - didn't realize he meant he had data in column C.
Thanks, Sub AA() Columns(3).Insert Set rng = Range(Cells(1, 1), Cells(Rows.Count, 1).End(xlUp)) rng.Offset(0, 2).Formula = "=a1&""""&b1" rng.Offset(0, 2).Formula = rng.Offset(0, 2).Value rng.Resize(, 2).EntireColumn.Delete End Sub -- Regards, Tom Ogilvy "Bernie Deitrick" <deitbe @ consumer dot org wrote in message ... Tom, Your line: rng.Offset(0, 2).Formula = "=a1&""""&b1" overwrites the existing column C. Perhaps Set rng = Range(Cells(1, 1), Cells(Rows.Count, 1).End(xlUp)) rng.EntireColumn.Insert rng.Offset(0, -1).Formula = "=B1&"" ""&C1" rng.Offset(0, -1).Formula = rng.Offset(0, -1).Value rng.Resize(, 2).EntireColumn.Delete HTH, Bernie MS Excel MVP "Tom Ogilvy" wrote in message ... In contrast, it ran fine for me and did exactly what you asked for: Once again Sub AA() Set rng = Range(Cells(1, 1), Cells(Rows.Count, 1).End(xlUp)) rng.Offset(0, 2).Formula = "=a1&""""&b1" rng.Offset(0, 2).Formula = rng.Offset(0, 2).Value rng.Resize(, 2).EntireColumn.Delete End Sub Do you have merged cells? -- Regards, Tom Ogilvy "Rob" wrote in message ... Tom, very helpful!!! Almost there. Your macro is deleting column C. I need to keep C. Can you help? "Tom Ogilvy" wrote: Sub AA() Dim rng as Range Set rng = Range(Cells(1,1),Cells(rows.count,1).End(xlup)) rng.offset(0,2).Formula = "=a1&""""&b1" rng.offset(0,2).formula = rng.offset(0,2).Value rng.Resize(,2).Entirecolumn.Delete end Sub "Rob" wrote in message ... I need to combine column a and b in a macro that I can run on multiple worksheets with different amounts of rows. I believe I need to create a new column, paste the combined values using (=a1&""&b1), in the new column, and then delete the two old columns. This I can do, but my problem comes when I try to run the same macro on a worksheet that contains more rows then the original one. There must be a way to do this. For instance, if there are 100 columns in the orginal worksheet where I created the macro, then if there are 120 columns, the macro is only combining 1-100, 101- 120. Please help a poor frustrated soul! |
#7
![]()
Posted to microsoft.public.excel.programming
|
|||
|
|||
![]()
Sub CombineForRob()
With Range("A1", Range("A65536").End(xlUp)) .EntireColumn.Insert With .Offset(0, -1) .FormulaR1C1 = "=RC[1]&"" "" &RC[2]" .Copy .PasteSpecial Paste:=xlPasteValues End With End With Range("B:C").EntireColumn.Delete End Sub HTH, Bernie MS Excel MVP "Rob" wrote in message ... I need to combine column a and b in a macro that I can run on multiple worksheets with different amounts of rows. I believe I need to create a new column, paste the combined values using (=a1&""&b1), in the new column, and then delete the two old columns. This I can do, but my problem comes when I try to run the same macro on a worksheet that contains more rows then the original one. There must be a way to do this. For instance, if there are 100 columns in the orginal worksheet where I created the macro, then if there are 120 columns, the macro is only combining 1-100, 101- 120. Please help a poor frustrated soul! |
#8
![]()
Posted to microsoft.public.excel.programming
|
|||
|
|||
![]()
Tom and Bernie,
Never did I expect such great help! Thank you Thank you Thank you!!! "Bernie Deitrick" wrote: Sub CombineForRob() With Range("A1", Range("A65536").End(xlUp)) .EntireColumn.Insert With .Offset(0, -1) .FormulaR1C1 = "=RC[1]&"" "" &RC[2]" .Copy .PasteSpecial Paste:=xlPasteValues End With End With Range("B:C").EntireColumn.Delete End Sub HTH, Bernie MS Excel MVP "Rob" wrote in message ... I need to combine column a and b in a macro that I can run on multiple worksheets with different amounts of rows. I believe I need to create a new column, paste the combined values using (=a1&""&b1), in the new column, and then delete the two old columns. This I can do, but my problem comes when I try to run the same macro on a worksheet that contains more rows then the original one. There must be a way to do this. For instance, if there are 100 columns in the orginal worksheet where I created the macro, then if there are 120 columns, the macro is only combining 1-100, 101- 120. Please help a poor frustrated soul! |
Reply |
Thread Tools | Search this Thread |
Display Modes | |
|
|
![]() |
||||
Thread | Forum | |||
Combine multiple columns into two long columns, Repeating rows in first column | Excel Discussion (Misc queries) | |||
Combine multiple columns into two long columns, Repeating rows in first column | Excel Discussion (Misc queries) | |||
Macro to Combine 2 columns to make one column without merging | Excel Discussion (Misc queries) | |||
I need to combine 30 columns into 1 or 2 | Excel Worksheet Functions | |||
Need to combine first and last name from two columns | Excel Programming |