返回列表 上一主題 發帖

[發問] 如何依據儲存格函數判斷列印範圍?

回復 10# GBKEE

感謝GBKEE版主回覆

附檔資料在第44列開始還有資料,共到791列
因每聯沒有標註聯號,所以要在最後欄位標註聯號,共計五聯
在依據票數資料來決定列印份數,每份五聯

最後附上新的格式,一樣是第44列開始有格式
未到期支票5聯標準.rar (468.37 KB)

TOP

回復 11# jackson7015


試試看

    Ex.rar (120.47 KB)
感恩的心......(在麻辣家族討論區.用心學習會有進步的)
但資源無限,後援有限,  一天1元的贊助,人人有能力.

TOP

回復 12# GBKEE

感謝GBKEE版主幫忙
測試6.7次後,皆可正常運作

不過1.2次會發生公式沒有帶入的情況,內容會出現000000的狀況
研究了一下程式的部分,好像不好帶入預覽列印的部分

   再次感謝大大的幫忙:D

TOP

回復 13# jackson7015
[預覽列印] 可關閉它或是選擇印列,但無法傳回參數供程式作中斷印列或繼續印列的判斷.

且使用:使用視窗的檢視模式切換為分頁符號預覽 試試看
  1. Sub Ex()
  2.     Dim Rng As Range, Ar(1 To 5), i As Integer, x As Integer
  3.     With Sheets("未到期支票標準")
  4.         If .Range("B3") = 0 Then
  5.             MsgBox "沒有資料可印列 ?"
  6.             Exit Sub
  7.         End If
  8.         ActiveWindow.View = xlPageBreakPreview  '使用中視窗的檢視模式切換為分頁符號預覽
  9.         Ar(1) = "第一聯"
  10.         Ar(2) = "第二聯"
  11.         Ar(3) = "第三聯"
  12.         Ar(4) = "第四聯"
  13.         Ar(5) = "第五聯"
  14.         .ScrollArea = "I6:x27"
  15.         With .PageSetup
  16.             .PrintArea = "I6:x27"  '印列範圍   "一張支票的範圍"
  17.             .CenterHorizontally = True  '如果列印時頁面上的工作表是水平置中的則為 True
  18.             .CenterVertically = True    '如果列印時頁面上的工作表是垂直置中的則為 True
  19.             .PaperSize = xlPaperA4      '設定紙張大小  '可看PaperSize 說明
  20.             .FitToPagesWide = 1         '設定頁寬=1頁
  21.             .FitToPagesTall = 1         '設定頁高=1頁
  22.         End With
  23.         
  24.         For i = 1 To .[B3]
  25.             Set Rng = .Range("C6:g6").Offset(i)
  26.             .Range("L12") = Rng(1, 1)  '票據號碼
  27.             .Range("M12") = Rng(1, 2)  '金額
  28.             .Range("O12") = Rng(1, 3)  '年
  29.             .Range("P12") = Rng(1, 4)  '月
  30.             .Range("Q12") = Rng(1, 5)  '日
  31.             .Range("X10") = Ar(1)
  32.             If MsgBox(.Range("L12") & " 印列", vbYesNo, "票據號碼") = vbYes Then
  33.                 For x = 1 To 5
  34.                     .Range("X10") = Ar(x)
  35.                     .PrintOut Copies:=1      '一張支票的範圍印列五次
  36.                 Next
  37.             End If
  38.         Next
  39.         .ScrollArea = ""
  40.     End With
  41.     ActiveWindow.View = xlNormalView
  42. End Sub
複製代碼
感恩的心......(在麻辣家族討論區.用心學習會有進步的)
但資源無限,後援有限,  一天1元的贊助,人人有能力.

TOP

回復 14# GBKEE

感謝GBKEE版主的詳細協助
讓小弟有個另個方向思考
原本想試試看使用MsgBox把所有要列印的份數資訊一次顯示,不過做不出來
就把版主所提供的單筆資訊做詳細整理
  1. If MsgBox(" 票據號碼:" & Range("L12") & Chr(13) & " 日期:" & Range("O12") & " 年 " & Range("P12") & " 月 " & Range("Q12") & " 日 " & Chr(13) & " 金額:" & Range("M12") & " 元", vbYesNo, "票據明細") = vbYes Then
複製代碼
再次感謝幫忙~

TOP

        靜思自在 : 世上有兩件事不能等:一、孝順 二、行善。
返回列表 上一主題