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

如何基於Excel中的單元格值打印特定的工作表?

您是否曾經嘗試過根據單元格值打印一些特定的圖紙? 在本文中,我將討論有關此問題的一些示例,如果您對此問題感興趣,請繼續。

使用VBA基於單元格打印紙

使用VBA根據相鄰單元格打印紙


使用VBA基於單元格打印紙

假設有兩張紙,您要基於Sheet1中的單元格A2打印Sheet1或Sheet1或兩張紙。 請執行以下操作:

在這種情況下,輸入1表示打印第一張紙,輸入2表示打印第二張紙,輸入3表示打印兩張紙。

1.根據需要在第一頁中輸入1、2或3,然後按 Alt + F11鍵 打開鑰匙 Microsoft Visual Basic for Applications 窗口。 看截圖:
doc按單元格1打印

2。 點擊 插入 > 模塊,然後將以下代碼粘貼到 模塊 腳本。 看截圖:

VBA:基於單元格值的打印表

Sub PrintStuff()
'UpdayebyExtendoffice20180811
    Dim xRgVal As Variant
    Dim xSheets As Sheets
    Set xSheets = ActiveWorkbook.Worksheets
    xRgVal = xSheets(1).Range("A1").Value
    If (IsNumeric(xRgVal)) And (Len(xRgVal) = 1) Then
        Select Case xRgVal
            Case 1
                xSheets(1).PrintOut
            Case 2
                xSheets(2).PrintOut
            Case 3
                xSheets(1).PrintOut
                xSheets(2).PrintOut
            Case Else
                MsgBox "Enter1,2 or 3 into A1(1 print Sheet1 2 print Sheet2 3 print Sheet1 and Sheet2 ", , "KuTools For Excel"
                Exit Sub
            End Select
    Else
        Exit Sub
    End If
End Sub

doc按單元格2打印

3。 按 F5 鍵直接打印紙張。


使用VBA根據相鄰單元格打印紙

如果一個工作簿中有多個工作表,並且要基於此工作簿中的單元格值打印一張或幾張工作表,則可以執行以下操作:

1.創建一個名為 控製表 在您使用的工作簿中,並在A列中列出所有工作表名稱(根據需要包括或排除控製表)。 看截圖:
doc按單元格3打印

2。 鍵入“打印如果要打印,請在工作表名稱旁邊的相鄰單元格中單擊“”。 請參閱顯示的屏幕截圖。
doc按單元格4打印

3。 按 Alt + F11鍵 啟用 Microsoft Visual Basic for Applications 窗口,然後單擊 插入 > 模塊。 查看截圖:
doc按單元格5打印

4.將下面的代碼粘貼到模塊,然後按 F5 鍵來運行代碼。

VBA:根據相鄰單元格打印

Sub CreateControlSheet()
'UpdatebyExtendoffice20170811
    Dim i As Integer
    Dim xCSheetRow As Integer
    Dim xSName As String
    Dim xCSheet As Variant
    Dim xRgVal As String
    On Error Resume Next
    xSName = "Control Sheet"
    Application.ScreenUpdating = False
    Application.DisplayAlerts = False
    Set xCSheet = ActiveWorkbook.Worksheets(xSName)
    xCSheetRow = xCSheet.Range("B65536").End(xlUp).Row
    For i = 2 To xCSheetRow
        xRgVal = xCSheet.Range("B" & i).Value
        If xRgVal = "Print" Or xRgVal = "print" Then
            If xCSheet.Range("A" & i).Value <> "" Then
                ActiveWorkbook.Worksheets(xCSheet.Range("A" & i).Value).PrintOut
            End If
        End If
    Next
    xCSheet.Delete
    ActiveWorkbook.Worksheets.Add
    ActiveSheet.Name = "Control Sheet"
    Range("A1").Select
    ActiveCell.FormulaR1C1 = "Sheet Name"
    Range("B1").Select
    ActiveCell.FormulaR1C1 = "Print?"
    For i = 1 To ActiveWorkbook.Worksheets.Count
        Range("A" & i + 1).Value = ActiveWorkbook.Worksheets(i).Name
    Next
    Cells.Columns.AutoFit
    Application.DisplayAlerts = True
    Application.ScreenUpdating = True
End Sub

 doc按單元格6打印

運行代碼後,將立即打印工作表,與此同時,新的控製表將替換舊的工作表。

小費。如果你有 Excel的Kutools創建工作表名稱列表 實用程序,您可以使用可單擊的鏈接快速創建新工作表中所有工作表名稱的列表。

Excel的Kutools, 與以上 300 方便的功能,使您的工作更加輕鬆。 
天, 請下載並立即免費試用。


doc按單元格7打印

最佳辦公效率工具

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底部
按評論排序
留言 (0)
還沒有評分。 成為第一位評論!
這裡還沒有評論
留下你的意見
以訪客身份發帖
×
評價此帖子:
0   字符
推薦地點

關注我們

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