Board logo

標題: [發問] 請教關於列印範圍問題(儲存格沒有資料不列印) [打印本頁]

作者: hairyhead    時間: 2016-1-22 11:01     標題: 請教關於列印範圍問題(儲存格沒有資料不列印)

最近剛完全一個工作表
其工作儲存格列印範圍如下
A1~A100
A1~K1
都是有劃表格的

如果儲存格的資料只有到A1~A50、A1~K1
該怎麼設計自動列印到有資料的範圍呢?

因為單純按列印的話
列印的範圍會連A51~A100、A1~K1有劃好的空白儲存格也一併列印出來
(儲存格裡是沒有資料的)

工作表的分頁共有12張(1月到12月的)
所以每張工作表的資料固定都是A1~A100、A1~K1
但每張工作表的儲存格資料不一定都是固定的

不知道有什麼方式可以解決列印的問題嗎?
謝謝
作者: 准提部林    時間: 2016-1-22 13:03

本帖最後由 准提部林 於 2016-1-22 13:09 編輯

方法1:
使用〔動態範圍〕的〔定義名稱〕:
名稱:Print_Area
公式:=INDIRECT("A1:K"&COUNTA(INDIRECT("A:A"))) 

每一工作表設一次∼∼可用〔複製〕,按〔Ctrl + V〕貼上

方法2:
在〔活頁簿事件〕中貼入以下程式:
Private Sub Workbook_BeforePrint(Cancel As Boolean)
Range("A1:K" & [A65536].End(xlUp).Row).Name = "'" & ActiveSheet.Name & "'!Print_Area"
End Sub
 
 
作者: hairyhead    時間: 2016-1-23 11:54

方法1:
使用〔動態範圍〕的〔定義名稱〕:
名稱:Print_Area
公式:=INDIRECT("A1:K"&COUNTA(INDIRECT ...
准提部林 發表於 2016-1-22 13:03


剛剛把此公式套到原來工作表是OK的
如果原來的工作表上
在定義名稱管理裡
若已經先存在一個
Print_Titles
='工作表1'!$8:$8
這個有辨法並存嗎?

因為$8:$8這部份
已經有先設定列印標題列裡去了

所以若資料到次頁
8列都是固定出現在最上面

然後1~7列都是固定公式出現結果用的

9列之後才是輸入資料使用
(A1~A100都有公式存在,是做流水號公式用的 =IF(A9="","",ROW()-8))

這樣再新增一個定義進去會有影響或該怎麼修改呢?
謝謝
作者: 准提部林    時間: 2016-1-23 12:06

本帖最後由 准提部林 於 2016-1-23 12:10 編輯

回復 3# hairyhead


〔Print_Titles〕與〔Print_Area〕並不衝突,

A欄若為純數字,且為〔數值格式〕,
公式改為:=INDIRECT("A1:K"&MATCH(9E+307,INDIRECT("A:A")))

沒有檔案,無法判定真正的列印函蓋範圍,基本表格可能包含〔表首.標題列.資料區〕!
作者: hairyhead    時間: 2016-1-23 15:14

本帖最後由 hairyhead 於 2016-1-23 15:15 編輯

剛剛試了一下
TITLES、AREA 這2個不衝突後面就沒有問題了
感謝解答
作者: momo020608    時間: 2017-9-4 12:26

回復 4# 准提部林

請問篩選後 避開空格,但是還是無法取消 空白頁
可以幫我看看嗎?

http://www.funp.net/951232

附檔案




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