Note: The other languages of the website are Google-translated. Back to English

如何基於Excel中的單元格值打印某些頁面或工作表?

您是否曾經嘗試過基於Excel中的單元格值打印某些頁面或工作表? 以及如何實現呢? 本文中的方法可以幫助您詳細解決它。

使用VBA代碼根據單元格值打印某些頁面
使用VBA代碼根據單元格值打印某些工作表


使用VBA代碼根據單元格值打印某些頁面

例如,當您在當前工作表的單元格A1中輸入頁碼1時,您希望自動打印某個頁面,例如當前工作表的頁面1。 您可以執行以下操作來實現它。

1.選擇包含要打印的頁碼的單元格,然後按 其他F11 同時打開 Microsoft Visual Basic for Applications 窗口。 然後點擊 插入 > 模塊.

2.然後 Microsoft Visual Basic for Applications 彈出窗口,請複制以下VBA代碼並將其粘貼到 推薦碼 窗口。

VBA代碼:根據單元格值打印頁面

Option Explicit
Sub Print_Pages()
Dim xPage As Integer
Dim xYesorNo As Integer
With ActiveCell
    If Not IsEmpty(.Value) And IsNumeric(.Value) Then
        xPage = .Value
    Else: MsgBox "Please specify a cell and enter a page in cell"
        Exit Sub
    End If
End With
xYesorNo = MsgBox("Ready to print page" & xPage & " ", vbYesNo, "Kutools for Excel")
If xYesorNo = vbYes Then
    ActiveSheet.PrintOut from:=xPage, To:=xPage, preview:=True
Else
    Exit Sub
End If
End Sub

3。 按 F5 鍵來運行代碼。 在彈出 Excel的Kutools 對話框中,單擊 按鈕以打印特定頁面,或單擊 沒有 如果您不想打印,請按按鈕退出對話框。 看截圖:

然後將打開當前工作表的特定頁面的預覽窗口,請單擊 列印 按鈕開始打印。


使用VBA代碼根據單元格值打印某些頁面

假設您要在此工作表的單元格B2中的值等於數字1001時打印活動工作表。您可以使用以下VBA代碼來實現它。 請執行以下操作。

1.右鍵單擊 工作表標籤 您要基於單元格值打印的內容,然後單擊 查看代碼 從右鍵單擊菜單中。

2.然後 Microsoft Visual Basic for Applications 彈出窗口,請複制以下VBA代碼並將其粘貼到“代碼”窗口中。

VBA代碼:根據單元格值打印工作表

Private Sub Worksheet_Change(ByVal Target As Range)
Dim xCell As Range, xYesorNo As Integer
Set xCell = ActiveSheet.Range("B2")
If Application.Intersect(Target, xCell) Is Nothing Then Exit Sub
    If xCell.Value = 1001 Then
        xYesorNo = MsgBox("Ready to print the specified worksheet? ", vbYesNo, "Kutools for Excel")
        If xYesorNo = vbYes Then
          ActiveSheet.PrintOut
        Else
           Exit Sub
        End If
End If
End Sub

備註:您可以根據需要在代碼中更改單元格和單元格的值。

3。 按 其他 + Q 關閉 Microsoft Visual Basic for Applications 窗口。

在單元格B1001中輸入數字2時, Excel的Kutools 彈出對話框,請點擊 按鈕開始打印。 或點擊 沒有 按鈕直接退出對話框而不進行打印。 看截圖:

小提示: 如果要直接打印當前工作表中的非連續頁面(例如第1、6和9頁),或僅打印所有偶數或奇數頁,則可以嘗試使用 打印指定頁面 實用程序pf Excel的Kutools 如下圖所示。 你可以去 免費下載軟件,不受限制 30.


相關文章:


最佳辦公效率工具

Kutools for Excel 解決了你的大部分問題,並將你的生產力提高了 80%

  • 重用: 快速插入 複雜的公式,圖表 以及您以前使用過的任何東西; 加密單元 帶密碼 創建郵件列表 並發送電子郵件...
  • 超級公式欄 (輕鬆編輯多行文本和公式); 閱讀版式 (輕鬆讀取和編輯大量單元格); 粘貼到過濾範圍...
  • 合併單元格/行/列 不會丟失數據; 拆分單元格內容; 合併重複的行/列...防止細胞重複; 比較範圍...
  • 選擇重複或唯一 行; 選擇空白行 (所有單元格都是空的); 超級查找和模糊查找 在許多工作簿中; 隨機選擇...
  • 確切的副本 多個單元格,無需更改公式參考; 自動創建參考 到多張紙; 插入項目符號,複選框等...
  • 提取文字,添加文本,按位置刪除, 刪除空間; 創建和打印分頁小計; 在單元格內容和註釋之間轉換...
  • 超級濾鏡 (將過濾方案保存並應用於其他工作表); 高級排序 按月/週/日,頻率及更多; 特殊過濾器 用粗體,斜體...
  • 結合工作簿和工作表; 根據關鍵列合併表; 將數據分割成多個工作表; 批量轉換xls,xlsx和PDF...
  • 超過 300 項強大的功能. 支持 Office / Excel 2007-2021 和 365。支持所有語言。 在您的企業或組織中輕鬆部署。 完整功能 30 天免費試用。 60 天退款保證。
kte選項卡201905

Office選項卡為Office帶來了選項卡式界面,使您的工作更加輕鬆

  • 在Word,Excel,PowerPoint中啟用選項卡式編輯和閱讀,發布者,Access,Visio和Project。
  • 在同一窗口的新選項卡中而不是在新窗口中打開並創建多個文檔。
  • 將您的工作效率提高 50%,每天為您減少數百次鼠標點擊!
officetab底部
按評論排序
留言 (4)
還沒有評分。 成為第一位評論!
網站主持人對此評論進行了最小化
這很有幫助! 有沒有辦法打印多頁? 例如,如果單元格 A1 = 5,則打印第 1-5 頁。
網站主持人對此評論進行了最小化
嗨萊恩,
如果要根據單元格值在工作表中打印連續的頁面,例如 1-5,請指定一個單元格,例如 A1 作為文本格式,在其中鍵入 1-5,保持該單元格選中,然後運行下面的 VBA代碼。

子 Print_Pages()
將 xPage 調暗為字符串
將 xYesorNo 調暗為整數
將 xI 調暗為字符串
將 xPArr() 調暗為字符串
將 xIS、xIE、xF、xNum 調暗為整數
xPage = ActiveCell.Value
xYesorNo = MsgBox("準備打印頁面" & xPage & " ", vbYesNo, "Kutools for Excel")
如果 xYesorNo = vbYes 那麼
xPArr() = 拆分(xPage, "-")
如果 UBound(xPArr) = 0 那麼
If IsEmpty(xPage) 和 IsNumeric(xPage) 則
MsgBox "請指定一個單元格並在單元格中輸入一個頁面"
退出小組
如果結束
xNum = Int(xPage)
ActiveSheet.PrintOut 從:=xNum,到:=xNum,預覽:=True
ElseIf UBound(xPArr) = 1 那麼
出錯時轉到 Err01
xIS = Int(xPARr(0))
xIE = Int(xPArr(1))
如果 xIS < xIE 那麼
對於 xF = xIS 到 xIE
ActiveSheet.PrintOut from:=xF, To:=xF, preview:=True
下一頁
其他
對於 xF = xIE 到 xIS
ActiveSheet.PrintOut from:=xF, To:=xF, preview:=True
下一頁
如果結束
其他
MsgBox "請輸入有效數據", vbOKOnly, "Kutools for Excel"
退出小組
如果結束
其他
退出小組
如果結束
退出小組
錯誤01:
MsgBox "請輸入正確的頁面範圍", vbOKOnly, "Kutools for Excel"
END SUB
網站主持人對此評論進行了最小化
謝謝你。 我有同樣的問題,我想根據單元格值打印頁面。 可以說變量更改,即第 1-5 頁,然後是 2-6 頁。 所以我有一個字段可以計算並按照建議將其放入文本格式。但由於某種原因,它對我不起作用。 它不打印任何頁面。你能告訴我嗎
網站主持人對此評論進行了最小化
你有沒有想過如何讓它工作?
這裡還沒有評論
留下你的意見
以訪客身份發帖
×
評價此帖子:
0   字符
推薦地點

關注我們

版權所有©2009 - 萬維網。extendoffice.com。 | 版權所有。 供電 ExtendOffice。 |
Microsoft和Office徽標是Microsoft Corporation在美國和/或其他國家的商標或註冊商標。
受Sectigo SSL保護