adjust page breaks based on row heights, export to pdf
This commit is contained in:
parent
48670f9ca7
commit
24b91e4fb5
@ -490,6 +490,8 @@ Sub build_customer_files()
|
|||||||
Dim plev As String
|
Dim plev As String
|
||||||
Dim effdate As Date
|
Dim effdate As Date
|
||||||
Dim segment_regex As String
|
Dim segment_regex As String
|
||||||
|
Dim curr As String
|
||||||
|
Dim fname As String
|
||||||
|
|
||||||
'----------------------pick price level---------------------------------------------------------------------
|
'----------------------pick price level---------------------------------------------------------------------
|
||||||
login.Caption = "PostgreSQL Login"
|
login.Caption = "PostgreSQL Login"
|
||||||
@ -595,7 +597,7 @@ Sub build_customer_files()
|
|||||||
segment_regex = "^F|^G|^P"
|
segment_regex = "^F|^G|^P"
|
||||||
Set nnws = nwb.Sheets.Add(, nws)
|
Set nnws = nwb.Sheets.Add(, nws)
|
||||||
nnws.Name = "Price List - Nursery"
|
nnws.Name = "Price List - Nursery"
|
||||||
Call paste_pretty(pln, nnws, effdate)
|
Call paste_pretty(pln, nnws, effdate, curr)
|
||||||
End If
|
End If
|
||||||
End If
|
End If
|
||||||
|
|
||||||
@ -613,7 +615,7 @@ Sub build_customer_files()
|
|||||||
End If
|
End If
|
||||||
Set nfws = nwb.Sheets.Add(, nws)
|
Set nfws = nwb.Sheets.Add(, nws)
|
||||||
nfws.Name = "Price List - Fiber"
|
nfws.Name = "Price List - Fiber"
|
||||||
Call paste_pretty(plf, nfws, effdate)
|
Call paste_pretty(plf, nfws, effdate, curr)
|
||||||
End If
|
End If
|
||||||
End If
|
End If
|
||||||
|
|
||||||
@ -624,7 +626,7 @@ Sub build_customer_files()
|
|||||||
End If
|
End If
|
||||||
If UBound(pl, 2) > 21 Then
|
If UBound(pl, 2) > 21 Then
|
||||||
nws.Name = "Price list"
|
nws.Name = "Price list"
|
||||||
Call paste_pretty(pl, nws, effdate)
|
Call paste_pretty(pl, nws, effdate, curr)
|
||||||
Else
|
Else
|
||||||
nws.Delete
|
nws.Delete
|
||||||
End If
|
End If
|
||||||
@ -642,11 +644,13 @@ Sub build_customer_files()
|
|||||||
Application.DisplayAlerts = True
|
Application.DisplayAlerts = True
|
||||||
nwb.Activate
|
nwb.Activate
|
||||||
|
|
||||||
|
fname = "HC Companies Distributor Price List " & curr & ".xlsx"
|
||||||
|
|
||||||
Dim wb As Workbook
|
Dim wb As Workbook
|
||||||
For Each wb In Workbooks
|
For Each wb In Workbooks
|
||||||
If wb.Name = "HC Companies Distributor Price List.xlsx" Then
|
If wb.Name = fname Then
|
||||||
If MsgBox("already have a price list open, close it?", vbOKCancel) Then
|
If MsgBox("already have a price list open, close it?", vbOKCancel) Then
|
||||||
Workbooks("HC Companies Distributor Price List.xlsx").Close
|
Workbooks(fname).Close
|
||||||
Exit For
|
Exit For
|
||||||
Else
|
Else
|
||||||
Exit Sub
|
Exit Sub
|
||||||
@ -654,7 +658,10 @@ Sub build_customer_files()
|
|||||||
End If
|
End If
|
||||||
Next wb
|
Next wb
|
||||||
|
|
||||||
If pricelevel.tbPATH.text <> "" Then nwb.SaveAs Filename:=filepath & "\HC Companies Distributor Price List.xlsx"
|
If pricelevel.tbPATH.text <> "" Then nwb.SaveAs Filename:=filepath & "\" & fname
|
||||||
|
|
||||||
|
fname = Replace(fname, "xlsx", "pdf")
|
||||||
|
nwb.ExportAsFixedFormat Type:=xlTypePDF, Filename:=filepath & "\" & fname, Quality:=xlQualityStandard, IncludeDocProperties:=False, IgnorePrintAreas:=False, OpenAfterPublish:=False
|
||||||
|
|
||||||
For Each wb In Workbooks
|
For Each wb In Workbooks
|
||||||
If wb.Name = "HC FullCode List.xlsx" Then
|
If wb.Name = "HC FullCode List.xlsx" Then
|
||||||
@ -674,14 +681,13 @@ Sub build_customer_files()
|
|||||||
|
|
||||||
End Sub
|
End Sub
|
||||||
|
|
||||||
Sub paste_pretty(ByRef pl() As String, ByRef nws As Worksheet, ByVal effdate As Date)
|
Sub paste_pretty(ByRef pl() As String, ByRef nws As Worksheet, ByVal effdate As Date, ByRef curr As String)
|
||||||
|
|
||||||
Dim c As Range
|
Dim c As Range
|
||||||
Dim i As Long
|
Dim i As Long
|
||||||
Dim last As Long
|
Dim last As Long
|
||||||
Dim lastcol As Long
|
Dim lastcol As Long
|
||||||
Dim j As Long
|
Dim j As Long
|
||||||
Dim curr As String
|
|
||||||
|
|
||||||
nws.Activate
|
nws.Activate
|
||||||
nws.Cells.NumberFormat = "@"
|
nws.Cells.NumberFormat = "@"
|
||||||
@ -739,7 +745,7 @@ Sub paste_pretty(ByRef pl() As String, ByRef nws As Worksheet, ByVal effdate As
|
|||||||
nws.Columns(15).WrapText = True
|
nws.Columns(15).WrapText = True
|
||||||
nws.Columns(11).ColumnWidth = 11.71
|
nws.Columns(11).ColumnWidth = 11.71
|
||||||
nws.Columns(14).ColumnWidth = 11.71
|
nws.Columns(14).ColumnWidth = 11.71
|
||||||
nws.Columns(17).ColumnWidth = 11.71
|
nws.Columns(17).ColumnWidth = 13
|
||||||
ActiveWindow.DisplayGridlines = False
|
ActiveWindow.DisplayGridlines = False
|
||||||
'nws.Cells.Font.Name = "Cascadia Code Light"
|
'nws.Cells.Font.Name = "Cascadia Code Light"
|
||||||
nws.Cells.Font.Name = "Courier New"
|
nws.Cells.Font.Name = "Courier New"
|
||||||
@ -1077,11 +1083,11 @@ Sub print_setup(sheet As Worksheet, last_row As Long)
|
|||||||
'-------------------force a page break on color codes----------
|
'-------------------force a page break on color codes----------
|
||||||
j = 1
|
j = 1
|
||||||
For i = 5 To last_row
|
For i = 5 To last_row
|
||||||
If j = 60 Then
|
If j >= 810 Then
|
||||||
sheet.HPageBreaks.Add before:=sheet.Rows(i + 1)
|
sheet.HPageBreaks.Add before:=sheet.Rows(i + 1)
|
||||||
j = 1
|
j = 1
|
||||||
End If
|
End If
|
||||||
'every 73 rows is a page break for current font
|
'every 73 rows is a page break for current font, but if a row is taller this needs accounted for
|
||||||
If sheet.Cells(i, 18) = "colors" And sheet.Cells(i - 1, 18) <> "colors" Then
|
If sheet.Cells(i, 18) = "colors" And sheet.Cells(i - 1, 18) <> "colors" Then
|
||||||
sheet.HPageBreaks.Add before:=sheet.Rows(i)
|
sheet.HPageBreaks.Add before:=sheet.Rows(i)
|
||||||
j = 1
|
j = 1
|
||||||
@ -1090,7 +1096,7 @@ Sub print_setup(sheet As Worksheet, last_row As Long)
|
|||||||
sheet.HPageBreaks.Add before:=sheet.Rows(i)
|
sheet.HPageBreaks.Add before:=sheet.Rows(i)
|
||||||
j = 1
|
j = 1
|
||||||
End If
|
End If
|
||||||
j = j + 1
|
j = j + sheet.Rows(i).RowHeight
|
||||||
Next i
|
Next i
|
||||||
|
|
||||||
sheet.DisplayPageBreaks = False
|
sheet.DisplayPageBreaks = False
|
||||||
|
Loading…
Reference in New Issue
Block a user