[算表] 針對某個工作表禁止列印?

看板Office作者 (佩蒂吉他)時間9年前 (2017/04/19 09:50), 9年前編輯推噓0(0022)
留言22則, 2人參與, 最新討論串1/1
軟體:excel 版本:2007以上 不知道有沒有設定可以禁止excel某工作表列印? 我看過保護工作表 跟private worksheet內容 似乎都沒有這設定可以用? -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 60.250.67.77 ※ 文章網址: https://www.ptt.cc/bbs/Office/M.1492566658.A.15E.html

04/19 10:30, , 1F
workbook有beforeprint事件可用,看看是否有符合
04/19 10:30, 1F

04/19 10:33, , 2F
我有用到workbook不過他會針對全部工作表 .....
04/19 10:33, 2F

04/19 10:35, , 3F
配合userform或inputbox之類請使用者輸入,輸入後再排除該
04/19 10:35, 3F

04/19 10:35, , 4F
工作表
04/19 10:35, 4F

04/19 10:38, , 5F
但如使用者是停用巨集或截圖方式印出的話,則無法發揮作用
04/19 10:38, 5F

04/19 10:39, , 6F
謝S大給提示 我剛試出來了
04/19 10:39, 6F
給版友若是有同樣問題可以用 Private Sub WorkBook_BeforePrint(Cancel As Boolean) If ActiveSheet.Name = "原始資料" Then Cancel = True MsgBox "原始資料工作表不能印" End If End Sub ※ 編輯: ptguitar (60.250.67.77), 04/19/2017 10:43:16

04/19 10:48, , 7F
如原po所述"他會針對全部工作表",該使用者如所在工作表並
04/19 10:48, 7F

04/19 10:49, , 8F
非工作表為"原始資料"時,也是適用嗎?
04/19 10:49, 8F

04/19 10:58, , 9F
我剛試的時候好像是這樣 剛開始我只有設定cancel=true
04/19 10:58, 9F

04/19 11:02, , 10F
後來發現應該要加條件才對XD
04/19 11:02, 10F

04/19 11:12, , 11F
測試,如回文所述"他會針對全部工作表",設定列印整本活頁
04/19 11:12, 11F

04/19 11:13, , 12F
且不在工作表名為"原始資料"時,還是可列印工作表名為"原
04/19 11:13, 12F

04/19 11:13, , 13F
始資料"內的資料
04/19 11:13, 13F

04/19 11:17, , 14F
如"他會針對全部工作表",但是設定列印使用中的工作表,而
04/19 11:17, 14F

04/19 11:17, , 15F
一張一張工作表印表的條件下則是有作用
04/19 11:17, 15F

04/19 11:19, , 16F
糟糕 雖說同事都是一個個印 因為那張表幾百頁是不用印
04/19 11:19, 16F

04/19 11:20, , 17F
謝謝S大的測試 我再來看看
04/19 11:20, 17F

04/19 11:22, , 18F
然,如果同事是以shift方式選取連續工作表或以ctrl方式選
04/19 11:22, 18F

04/19 11:24, , 19F
取不連續工作表進行列印,如activate的工作表名非"原始資
04/19 11:24, 19F

04/19 11:25, , 20F
料"時,測試還是可輸出
04/19 11:25, 20F

04/19 11:26, , 21F
如activate於"原始資料"反而是出現msgbox訊息,但其他應輸
04/19 11:26, 21F

04/19 11:26, , 22F
出工作表也就不輸出了
04/19 11:26, 22F
文章代碼(AID): #1OziA25U (Office)
文章代碼(AID): #1OziA25U (Office)