Home |
Search |
Today's Posts |
|
#1
![]()
Posted to microsoft.public.excel.programming
|
|||
|
|||
![]()
I am using the following to try to identify the last used column and then
select the top cell of the first empty column after the last used: myRange = ActiveSheet.UsedRange NewColumn = (myRange.Columns(myRange.Columns.Count).Column) + 1 ActiveSheet.Cells(1, NewColumn).Select Can anyone tell me what I am doing wrong? This is not working. The portion in () in the second line I copied from the help file, but do not understand. -- Regards, Bryan Brassell Padgett Business Services 281-897-9141 |
#2
![]()
Posted to microsoft.public.excel.programming
|
|||
|
|||
![]()
It's kind of unnecessary.
myRange=ActiveSheet.UsedRange.Columns.Count ActiveSheet.Cells(1,myRange +1).Select Works for me. Jesse |
#3
![]()
Posted to microsoft.public.excel.programming
|
|||
|
|||
![]()
Careful with they used range. It is not always what you might think it is. It
is at least the size of the populated data, but if you have saved the file then deleted data and not re-saved then it may be larger than you think. -- HTH... Jim Thomlinson "Jesse" wrote: It's kind of unnecessary. myRange=ActiveSheet.UsedRange.Columns.Count ActiveSheet.Cells(1,myRange +1).Select Works for me. Jesse |
#4
![]()
Posted to microsoft.public.excel.programming
|
|||
|
|||
![]()
By last column I assume you mean the last column with a value in it
anywhere??? Try this... Public Sub test() Cells(1, LastColumn() + 1).Select End Sub Public Function LastColumn(Optional wks As Worksheet) As Integer If wks Is Nothing Then Set wks = ActiveSheet LastColumn = wks.Cells.Find(What:="*", _ After:=wks.Range("A1"), _ Lookat:=xlPart, _ LookIn:=xlFormulas, _ SearchOrder:=xlByColumns, _ SearchDirection:=xlPrevious, _ MatchCase:=False).Column End Function -- HTH... Jim Thomlinson "Bryan Brassell" wrote: I am using the following to try to identify the last used column and then select the top cell of the first empty column after the last used: myRange = ActiveSheet.UsedRange NewColumn = (myRange.Columns(myRange.Columns.Count).Column) + 1 ActiveSheet.Cells(1, NewColumn).Select Can anyone tell me what I am doing wrong? This is not working. The portion in () in the second line I copied from the help file, but do not understand. -- Regards, Bryan Brassell Padgett Business Services 281-897-9141 |
#5
![]()
Posted to microsoft.public.excel.programming
|
|||
|
|||
![]()
Really what I need is the first blank column on a particular worksheet. I
need to paste in a colum of numbers representing completed work. The next time a batch is run, I need to paste that set of numbers on the same sheet, in the next column, and so on... -- Regards, Bryan Brassell Padgett Business Services 281-897-9141 "Jim Thomlinson" wrote: By last column I assume you mean the last column with a value in it anywhere??? Try this... Public Sub test() Cells(1, LastColumn() + 1).Select End Sub Public Function LastColumn(Optional wks As Worksheet) As Integer If wks Is Nothing Then Set wks = ActiveSheet LastColumn = wks.Cells.Find(What:="*", _ After:=wks.Range("A1"), _ Lookat:=xlPart, _ LookIn:=xlFormulas, _ SearchOrder:=xlByColumns, _ SearchDirection:=xlPrevious, _ MatchCase:=False).Column End Function -- HTH... Jim Thomlinson "Bryan Brassell" wrote: I am using the following to try to identify the last used column and then select the top cell of the first empty column after the last used: myRange = ActiveSheet.UsedRange NewColumn = (myRange.Columns(myRange.Columns.Count).Column) + 1 ActiveSheet.Cells(1, NewColumn).Select Can anyone tell me what I am doing wrong? This is not working. The portion in () in the second line I copied from the help file, but do not understand. -- Regards, Bryan Brassell Padgett Business Services 281-897-9141 |
#6
![]()
Posted to microsoft.public.excel.programming
|
|||
|
|||
![]() myRange=Sheets(DestinationSheet).UsedRange.Columns .Count ActiveSheet.Cells(sourcedata).EntireColumn.Copy Destination:=Sheets(DestinationSheet).Cells(1,myRa nge +1).EntireColumn Jesse |
#7
![]()
Posted to microsoft.public.excel.programming
|
|||
|
|||
![]()
myRange=Sheets(DestinationSheet).UsedRange.Columns .Count
ActiveSheet.Cells(sourcedata).EntireColumn.Copy _ Destination:=Sheets(DestinationSheet).Cells(1,myRa nge +1).EntireColumn Sorry, auto word wrap. Jesse |
#8
![]()
Posted to microsoft.public.excel.programming
|
|||
|
|||
![]()
Give that code I posted a try. The function returns the column number of the
last column with data in it. You can specify a worksheet or not when you use the function... -- HTH... Jim Thomlinson "Bryan Brassell" wrote: Really what I need is the first blank column on a particular worksheet. I need to paste in a colum of numbers representing completed work. The next time a batch is run, I need to paste that set of numbers on the same sheet, in the next column, and so on... -- Regards, Bryan Brassell Padgett Business Services 281-897-9141 "Jim Thomlinson" wrote: By last column I assume you mean the last column with a value in it anywhere??? Try this... Public Sub test() Cells(1, LastColumn() + 1).Select End Sub Public Function LastColumn(Optional wks As Worksheet) As Integer If wks Is Nothing Then Set wks = ActiveSheet LastColumn = wks.Cells.Find(What:="*", _ After:=wks.Range("A1"), _ Lookat:=xlPart, _ LookIn:=xlFormulas, _ SearchOrder:=xlByColumns, _ SearchDirection:=xlPrevious, _ MatchCase:=False).Column End Function -- HTH... Jim Thomlinson "Bryan Brassell" wrote: I am using the following to try to identify the last used column and then select the top cell of the first empty column after the last used: myRange = ActiveSheet.UsedRange NewColumn = (myRange.Columns(myRange.Columns.Count).Column) + 1 ActiveSheet.Cells(1, NewColumn).Select Can anyone tell me what I am doing wrong? This is not working. The portion in () in the second line I copied from the help file, but do not understand. -- Regards, Bryan Brassell Padgett Business Services 281-897-9141 |
#9
![]()
Posted to microsoft.public.excel.programming
|
|||
|
|||
![]()
Bryan,
myRange is an object variable. You tell Excel what it refers to by using a "Set" statement. Other types of variables do not require this step. Change... myRange =... to Set myRange =... I remember seeing that line code in the help file for the first time and wondering how it worked. It turns out that it is a very useful technique. "Columns" is a collection, so Range.Columns returns all the columns in a range.(an object) Range.Columns(1) returns the first column in the range. (an object) Range.Columns.Count tells you how many columns there are in the range. ( a long) Substituting the count of the columns inside the parenthesis returns the last column in the range. (an object) Adding the .Column to the end returns the column number. -- Regards, Jim Cone San Francisco, USA http://www.realezsites.com/bus/primitivesoftware "Bryan Brassell" wrote in message ... I am using the following to try to identify the last used column and then select the top cell of the first empty column after the last used: myRange = ActiveSheet.UsedRange NewColumn = (myRange.Columns(myRange.Columns.Count).Column) + 1 ActiveSheet.Cells(1, NewColumn).Select Can anyone tell me what I am doing wrong? This is not working. The portion in () in the second line I copied from the help file, but do not understand. -- Regards, Bryan Brassell Padgett Business Services 281-897-9141 |
Reply |
Thread Tools | Search this Thread |
Display Modes | |
|
|
![]() |
||||
Thread | Forum | |||
FInd common data in one column then add number in adjacent column | Excel Worksheet Functions | |||
compare data in column A with column B to find duplicates | Excel Discussion (Misc queries) | |||
find last row value in column when using MATCH to find column | Excel Worksheet Functions | |||
Find something in column a then find if column B matches criteria | Excel Discussion (Misc queries) | |||
Find First Non blank cell than find column header and return that value | Excel Worksheet Functions |