Home |
Search |
Today's Posts |
|
#1
![]()
Posted to microsoft.public.excel.programming
|
|||
|
|||
![]()
I have the follwoign code to Sort a column on a worksheet and resize to
autofit but I keep getting run time error 1004. Any Advice? Private Sub Workbook_Open() Worksheets("Inquiry").Range("A2:B100").Sort _ Key1:=Worksheets("Inquiry").Range("A2"), _ Key2:=Worksheets("Inquiry").Range("B100") Worksheets("Inquiry").Range("B2:B100").Rows.AutoFi t End Sub |
#2
![]()
Posted to microsoft.public.excel.programming
|
|||
|
|||
![]()
You might want to use the EntireColumn property...
Worksheets("Inquiry").Range("B2:B100").EntireColum n.AutoFit HTH -- Regards, Zack Barresse, aka firefytr MsgBox "fire" & "fytr" & Chr(64) & "vba" & "express" & Chr(46) & "com" "Qaspec" wrote in message ... I have the follwoign code to Sort a column on a worksheet and resize to autofit but I keep getting run time error 1004. Any Advice? Private Sub Workbook_Open() Worksheets("Inquiry").Range("A2:B100").Sort _ Key1:=Worksheets("Inquiry").Range("A2"), _ Key2:=Worksheets("Inquiry").Range("B100") Worksheets("Inquiry").Range("B2:B100").Rows.AutoFi t End Sub |
#3
![]()
Posted to microsoft.public.excel.programming
|
|||
|
|||
![]()
Hi
works OK on my machine (Excel 2002). Is there more to the code? What does the data in the range look like? regards Paul On Mar 22, 3:23 pm, Qaspec wrote: I have the follwoign code to Sort a column on a worksheet and resize to autofit but I keep getting run time error 1004. Any Advice? Private Sub Workbook_Open() Worksheets("Inquiry").Range("A2:B100").Sort _ Key1:=Worksheets("Inquiry").Range("A2"), _ Key2:=Worksheets("Inquiry").Range("B100") Worksheets("Inquiry").Range("B2:B100").Rows.AutoFi t End Sub |
#4
![]()
Posted to microsoft.public.excel.programming
|
|||
|
|||
![]()
try
Private Sub Workbook_Open() With ThisWorkbook .Worksheets("Inquiry").Range("A2:B100").Sort _ Key1:=.Worksheets("Inquiry").Range("A2"), _ Key2:=.Worksheets("Inquiry").Range("B100") .Worksheets("Inquiry").Range("B2:B100").EntireRow. AutoFit End With End Sub -- Regards, Tom Ogilvy "Qaspec" wrote: I have the follwoign code to Sort a column on a worksheet and resize to autofit but I keep getting run time error 1004. Any Advice? Private Sub Workbook_Open() Worksheets("Inquiry").Range("A2:B100").Sort _ Key1:=Worksheets("Inquiry").Range("A2"), _ Key2:=Worksheets("Inquiry").Range("B100") Worksheets("Inquiry").Range("B2:B100").Rows.AutoFi t End Sub |
#5
![]()
Posted to microsoft.public.excel.programming
|
|||
|
|||
![]()
I found my problem, there are a couple of cells in the range that are merged.
Is there any way to take the merged cells into account. Maybe I can set them to a predetermined size and autosize anything that isnt a merged cell? Because of the sort I can never be sure which rows will contain the merged cells. Thanks "Tom Ogilvy" wrote: try Private Sub Workbook_Open() With ThisWorkbook .Worksheets("Inquiry").Range("A2:B100").Sort _ Key1:=.Worksheets("Inquiry").Range("A2"), _ Key2:=.Worksheets("Inquiry").Range("B100") .Worksheets("Inquiry").Range("B2:B100").EntireRow. AutoFit End With End Sub -- Regards, Tom Ogilvy "Qaspec" wrote: I have the follwoign code to Sort a column on a worksheet and resize to autofit but I keep getting run time error 1004. Any Advice? Private Sub Workbook_Open() Worksheets("Inquiry").Range("A2:B100").Sort _ Key1:=Worksheets("Inquiry").Range("A2"), _ Key2:=Worksheets("Inquiry").Range("B100") Worksheets("Inquiry").Range("B2:B100").Rows.AutoFi t End Sub |
#6
![]()
Posted to microsoft.public.excel.programming
|
|||
|
|||
![]()
Instead, how about looking for a way to un-merge the cells. They cause more
problems than they benefit. -- Regards, Zack Barresse, aka firefytr MsgBox "fire" & "fytr" & Chr(64) & "vba" & "express" & Chr(46) & "com" "Qaspec" wrote in message ... I found my problem, there are a couple of cells in the range that are merged. Is there any way to take the merged cells into account. Maybe I can set them to a predetermined size and autosize anything that isnt a merged cell? Because of the sort I can never be sure which rows will contain the merged cells. Thanks "Tom Ogilvy" wrote: try Private Sub Workbook_Open() With ThisWorkbook .Worksheets("Inquiry").Range("A2:B100").Sort _ Key1:=.Worksheets("Inquiry").Range("A2"), _ Key2:=.Worksheets("Inquiry").Range("B100") .Worksheets("Inquiry").Range("B2:B100").EntireRow. AutoFit End With End Sub -- Regards, Tom Ogilvy "Qaspec" wrote: I have the follwoign code to Sort a column on a worksheet and resize to autofit but I keep getting run time error 1004. Any Advice? Private Sub Workbook_Open() Worksheets("Inquiry").Range("A2:B100").Sort _ Key1:=Worksheets("Inquiry").Range("A2"), _ Key2:=Worksheets("Inquiry").Range("B100") Worksheets("Inquiry").Range("B2:B100").Rows.AutoFi t End Sub |
#7
![]()
Posted to microsoft.public.excel.programming
|
|||
|
|||
![]()
I wish it were that easy. Due to the way we are using the cells to copy from
excel into another application simple fixes like changing the column width or font size aren't available for me. The only way to get rid on the merged cells is to figure out a way to increase the 409.5 height limit on a cell. "Zack Barresse" wrote: Instead, how about looking for a way to un-merge the cells. They cause more problems than they benefit. -- Regards, Zack Barresse, aka firefytr MsgBox "fire" & "fytr" & Chr(64) & "vba" & "express" & Chr(46) & "com" "Qaspec" wrote in message ... I found my problem, there are a couple of cells in the range that are merged. Is there any way to take the merged cells into account. Maybe I can set them to a predetermined size and autosize anything that isnt a merged cell? Because of the sort I can never be sure which rows will contain the merged cells. Thanks "Tom Ogilvy" wrote: try Private Sub Workbook_Open() With ThisWorkbook .Worksheets("Inquiry").Range("A2:B100").Sort _ Key1:=.Worksheets("Inquiry").Range("A2"), _ Key2:=.Worksheets("Inquiry").Range("B100") .Worksheets("Inquiry").Range("B2:B100").EntireRow. AutoFit End With End Sub -- Regards, Tom Ogilvy "Qaspec" wrote: I have the follwoign code to Sort a column on a worksheet and resize to autofit but I keep getting run time error 1004. Any Advice? Private Sub Workbook_Open() Worksheets("Inquiry").Range("A2:B100").Sort _ Key1:=Worksheets("Inquiry").Range("A2"), _ Key2:=Worksheets("Inquiry").Range("B100") Worksheets("Inquiry").Range("B2:B100").Rows.AutoFi t End Sub |
#8
![]()
Posted to microsoft.public.excel.programming
|
|||
|
|||
![]()
Autofit doesn't work with merged cells.
this code by Jim Rech Sub AutoFitMergedCellRowHeight() Dim CurrentRowHeight As Single, MergedCellRgWidth As Single Dim CurrCell As Range Dim ActiveCellWidth As Single, PossNewRowHeight As Single If ActiveCell.MergeCells Then With ActiveCell.MergeArea If .Rows.Count = 1 And .WrapText = True Then Application.ScreenUpdating = False CurrentRowHeight = .RowHeight ActiveCellWidth = ActiveCell.ColumnWidth For Each CurrCell In Selection MergedCellRgWidth = CurrCell.ColumnWidth + _ MergedCellRgWidth Next .MergeCells = False .Cells(1).ColumnWidth = MergedCellRgWidth .EntireRow.AutoFit PossNewRowHeight = .RowHeight .Cells(1).ColumnWidth = ActiveCellWidth .MergeCells = True .RowHeight = IIf(CurrentRowHeight PossNewRowHeight, _ CurrentRowHeight, PossNewRowHeight) End If End With End If End Sub may get you started. It is fairly specialized in what it handles, but you might be able to incorporate it into you situation or use the method shown. Obviously no guarantees since I have no idea what your data looks like. -- Regards, Tom Ogilvy "Qaspec" wrote: I found my problem, there are a couple of cells in the range that are merged. Is there any way to take the merged cells into account. Maybe I can set them to a predetermined size and autosize anything that isnt a merged cell? Because of the sort I can never be sure which rows will contain the merged cells. Thanks "Tom Ogilvy" wrote: try Private Sub Workbook_Open() With ThisWorkbook .Worksheets("Inquiry").Range("A2:B100").Sort _ Key1:=.Worksheets("Inquiry").Range("A2"), _ Key2:=.Worksheets("Inquiry").Range("B100") .Worksheets("Inquiry").Range("B2:B100").EntireRow. AutoFit End With End Sub -- Regards, Tom Ogilvy "Qaspec" wrote: I have the follwoign code to Sort a column on a worksheet and resize to autofit but I keep getting run time error 1004. Any Advice? Private Sub Workbook_Open() Worksheets("Inquiry").Range("A2:B100").Sort _ Key1:=Worksheets("Inquiry").Range("A2"), _ Key2:=Worksheets("Inquiry").Range("B100") Worksheets("Inquiry").Range("B2:B100").Rows.AutoFi t End Sub |
#9
![]()
Posted to microsoft.public.excel.programming
|
|||
|
|||
![]()
Thanks, I also realized I'mnot even making it to the Sizing portion of my
macro. The code stops at the Sort portion due to the cells "merged cells" not being "identically sized". I tried to size the rows and columns so before the sort runs every cell in the range is the same height and width but it still returns the "identically sized" error. Private Sub Workbook_Open() With ThisWorkbook .Worksheets("Concern").Rows("2:100").RowHeight = 20 .Worksheets("Concern").Columns("A:B").ColumnWidth = 20 .Worksheets("Concern").Range("A2:B100").Sort _ Key1:=.Worksheets("Concern").Range("A2"), _ Key2:=.Worksheets("Concern").Range("B100") End With End Sub "Tom Ogilvy" wrote: Autofit doesn't work with merged cells. this code by Jim Rech Sub AutoFitMergedCellRowHeight() Dim CurrentRowHeight As Single, MergedCellRgWidth As Single Dim CurrCell As Range Dim ActiveCellWidth As Single, PossNewRowHeight As Single If ActiveCell.MergeCells Then With ActiveCell.MergeArea If .Rows.Count = 1 And .WrapText = True Then Application.ScreenUpdating = False CurrentRowHeight = .RowHeight ActiveCellWidth = ActiveCell.ColumnWidth For Each CurrCell In Selection MergedCellRgWidth = CurrCell.ColumnWidth + _ MergedCellRgWidth Next .MergeCells = False .Cells(1).ColumnWidth = MergedCellRgWidth .EntireRow.AutoFit PossNewRowHeight = .RowHeight .Cells(1).ColumnWidth = ActiveCellWidth .MergeCells = True .RowHeight = IIf(CurrentRowHeight PossNewRowHeight, _ CurrentRowHeight, PossNewRowHeight) End If End With End If End Sub may get you started. It is fairly specialized in what it handles, but you might be able to incorporate it into you situation or use the method shown. Obviously no guarantees since I have no idea what your data looks like. -- Regards, Tom Ogilvy "Qaspec" wrote: I found my problem, there are a couple of cells in the range that are merged. Is there any way to take the merged cells into account. Maybe I can set them to a predetermined size and autosize anything that isnt a merged cell? Because of the sort I can never be sure which rows will contain the merged cells. Thanks "Tom Ogilvy" wrote: try Private Sub Workbook_Open() With ThisWorkbook .Worksheets("Inquiry").Range("A2:B100").Sort _ Key1:=.Worksheets("Inquiry").Range("A2"), _ Key2:=.Worksheets("Inquiry").Range("B100") .Worksheets("Inquiry").Range("B2:B100").EntireRow. AutoFit End With End Sub -- Regards, Tom Ogilvy "Qaspec" wrote: I have the follwoign code to Sort a column on a worksheet and resize to autofit but I keep getting run time error 1004. Any Advice? Private Sub Workbook_Open() Worksheets("Inquiry").Range("A2:B100").Sort _ Key1:=Worksheets("Inquiry").Range("A2"), _ Key2:=Worksheets("Inquiry").Range("B100") Worksheets("Inquiry").Range("B2:B100").Rows.AutoFi t End Sub |
Reply |
Thread Tools | Search this Thread |
Display Modes | |
|
|
![]() |
||||
Thread | Forum | |||
Auto Open problem | Excel Discussion (Misc queries) | |||
open up an excel program with an auto open macro | Excel Programming | |||
auto open, auto close | Excel Programming | |||
still having problem with open currently open excel file | Excel Programming | |||
Problem With Auto Open | Excel Programming |