Home |
Search |
Today's Posts |
|
#1
![]()
Posted to microsoft.public.excel.programming
|
|||
|
|||
![]()
Have used the following for a number years (Thanks to Frank Kabel)
However, as the pricing sheets get larger (now about 1500 lines), it is taking too long from start to finish. This particular process takes about 1 full minute. The area of concern in the coding shown is between the Any ideas/suggestions would be greatly appreciated Sub PrintPricingCustomer() ' PrintPricingCustomer Macro ' Keyboard Shortcut: NONE Worksheets("Pricing").Select Call WS_Unprotect Application.ScreenUpdating = False Cells.Select With Selection .Borders(xlDiagonalDown).LineStyle = xlNone .Borders(xlDiagonalUp).LineStyle = xlNone .Borders(xlEdgeLeft).LineStyle = xlNone .Borders(xlEdgeTop).LineStyle = xlNone .Borders(xlEdgeBottom).LineStyle = xlNone .Borders(xlEdgeRight).LineStyle = xlNone .Borders(xlInsideVertical).LineStyle = xlNone .Borders(xlInsideHorizontal).LineStyle = xlNone .Interior.ColorIndex = -4142 End With With ActiveSheet.PageSetup .PrintGridlines = False .CenterHorizontally = True End With Cells.Select With Selection .EntireRow.Hidden = False .EntireColumn.Hidden = False End With Dim RowNdx As Long Dim LastRow As Long LastRow = ActiveSheet.Cells(Rows.Count, "B").End(xlUp).Row For RowNdx = LastRow To 1 Step -1 If Cells(RowNdx, "B").Value = "x" Then Rows(RowNdx).Hidden = True End If Next RowNdx Columns("F:G").Select Selection.EntireColumn.Hidden = True Worksheets("Pricing").PrintOut Copies:=1, Collate:=True Call Green Call WS_Protect Application.ScreenUpdating = True End Sub |
#2
![]()
Posted to microsoft.public.excel.programming
|
|||
|
|||
![]()
If you turn off the page break lines
tools|options|view tab|uncheck page breaks (in xl2003) Does the code work faster? When you're hiding rows/columns, excel wants to figure out where to draw those lines each time you change the layout. Turning of calculation and making sure you're in Normal view will help, too. Option Explicit Sub testme() Dim CalcMode As Long Dim ViewMode As Long Application.ScreenUpdating = False CalcMode = Application.Calculation Application.Calculation = xlCalculationManual ViewMode = ActiveWindow.View ActiveWindow.View = xlNormalView 'your code here 'put things back to what they were Application.Calculation = CalcMode ActiveWindow.View = ViewMode Application.ScreenUpdating = True End Sub BEEJAY wrote: Have used the following for a number years (Thanks to Frank Kabel) However, as the pricing sheets get larger (now about 1500 lines), it is taking too long from start to finish. This particular process takes about 1 full minute. The area of concern in the coding shown is between the Any ideas/suggestions would be greatly appreciated Sub PrintPricingCustomer() ' PrintPricingCustomer Macro ' Keyboard Shortcut: NONE Worksheets("Pricing").Select Call WS_Unprotect Application.ScreenUpdating = False Cells.Select With Selection .Borders(xlDiagonalDown).LineStyle = xlNone .Borders(xlDiagonalUp).LineStyle = xlNone .Borders(xlEdgeLeft).LineStyle = xlNone .Borders(xlEdgeTop).LineStyle = xlNone .Borders(xlEdgeBottom).LineStyle = xlNone .Borders(xlEdgeRight).LineStyle = xlNone .Borders(xlInsideVertical).LineStyle = xlNone .Borders(xlInsideHorizontal).LineStyle = xlNone .Interior.ColorIndex = -4142 End With With ActiveSheet.PageSetup .PrintGridlines = False .CenterHorizontally = True End With Cells.Select With Selection .EntireRow.Hidden = False .EntireColumn.Hidden = False End With Dim RowNdx As Long Dim LastRow As Long LastRow = ActiveSheet.Cells(Rows.Count, "B").End(xlUp).Row For RowNdx = LastRow To 1 Step -1 If Cells(RowNdx, "B").Value = "x" Then Rows(RowNdx).Hidden = True End If Next RowNdx Columns("F:G").Select Selection.EntireColumn.Hidden = True Worksheets("Pricing").PrintOut Copies:=1, Collate:=True Call Green Call WS_Protect Application.ScreenUpdating = True End Sub -- Dave Peterson |
Reply |
Thread Tools | Search this Thread |
Display Modes | |
|
|
![]() |
||||
Thread | Forum | |||
Borders slowing filter process in Excel 2003 | Excel Discussion (Misc queries) | |||
Hide empty rows in pivot table Excel 2003 | Excel Discussion (Misc queries) | |||
Hide data in specific rows/colums/cells in Excel 2003 | Excel Discussion (Misc queries) | |||
Slow Running Code to Hide Blank Rows | Excel Programming | |||
Simplify Process with Excel 2003 | New Users to Excel |