Board logo

標題: [發問] 自動循環列印_判斷列印範圍 [打印本頁]

作者: starry1314    時間: 2016-12-6 09:56     標題: 自動循環列印_判斷列印範圍

本帖最後由 starry1314 於 2016-12-6 10:03 編輯

樞紐分析表
請問VBA該如何設定 自動選擇列印範圍後列印
1.分成三張 1F、2F、3F
2.目前想法是A2開始到下一列 並包含合計兩字的列 為列印範圍
3.在從上次運行結果的下一列重複循環..
[attach]26036[/attach]
[attach]26037[/attach]


此為橫向的方式
  1. Option Explicit
  2. 'LPK87 提供
  3. Sub 巨集1()
  4.     Dim c As Range
  5.     With Sheets("工作表1")
  6.         Set c = .Rows(3).Find("P.P", , , , , 1) '往後尋找
  7.         .PageSetup.PrintArea = .Range(.Cells(Rows.Count, 1).End(xlUp), Cells(2, c.Column)).Address '設定列印範圍
  8.         .PrintOut Copies:=1, Collate:=True, IgnorePrintAreas:=False '列印
  9.         Set c = Nothing
  10.         Set c = .Rows(3).Find("P.P", , , , , 2) '往前尋找
  11.         .PageSetup.PrintArea = .Range(.Cells(Rows.Count, 1).End(xlUp), Cells(2, c.Column)).Address '設定列印範圍
  12.         .PrintOut Copies:=1, Collate:=True, IgnorePrintAreas:=False '列印
  13.         Set c = Nothing
  14.     End With
  15. End Sub
複製代碼

作者: 葉國洲    時間: 2016-12-6 11:30

  1. Sub test()
  2. For i = 2 To 6 Step 2
  3. Range(Cells(i, 1), Cells(i + 1, 5)).PrintOut
  4. Next i
  5. End Sub
複製代碼

作者: starry1314    時間: 2016-12-6 12:41

回復 2# 葉國洲


    抱歉,範例不夠完整
因品項不是固定的 故無法使用step 2
可能美式1X項 日式5項之類的
作者: 葉國洲    時間: 2016-12-6 13:16

回復 3# starry1314

根據你提供的資料用step2是沒有錯的
作者: 准提部林    時間: 2016-12-6 15:12

Sub TEST()
ActiveSheet.ResetAllPageBreaks
For i = 2 To Cells(Rows.Count, 1).End(xlUp).Row - 1
  If Right(Cells(i, 1), 2) = "合計" Then
    ActiveSheet.HPageBreaks.Add Before:=Cells(i + 1, 1)
  End If
Next i
End Sub

加入〔分頁〕線,再手動列印(可手動指定列印頁次)
作者: starry1314    時間: 2016-12-7 09:21

回復 5# 准提部林


    感謝淮大




歡迎光臨 麻辣家族討論版版 (http://forum.twbts.com/)