分頁單獨打印Excel表中指定行的數據

      網友投稿 597 2025-03-31

      分頁單獨打印Excel表中指定行的數據

      我只想打印其中的一行,或者從第m行到第n行的數據,這如何實現呢?

      示例數據工作表、打印樣式和要打印的表格模板工作表分別如下、和所示。

      將“數據”工作表(如所示)中的數據導入“表格模板”工作表(如所示)中并打印出來(如所示)。

      數據工作表

      打印的樣表

      表格模板工作表

      使用輸入框打印指定行數據

      如果要打印指定的數據行,可以簡單地使用Application對象的InputBox方法,用來讓用戶輸入要打印的行號。代碼如下:

      Sub printARowData()

      ‘數據記錄工作表變量

      Dim wksDatas As Worksheet

      ‘模板工作表變量

      Dim wksTable As Worksheet

      ‘數據記錄工作表中最后一行變量

      Dim lngLastRow As Long

      ‘行變量

      Dim lRow As Long

      ‘提示信息

      Dim strPrompt As String

      ‘忽略錯誤

      On Error Resume Next

      ‘將工作表賦給相應的變量

      Set wksDatas = Worksheets(“數據”)

      Set wksTable = Worksheets(“表格模板”)

      ‘獲取數據記錄工作表最后一行行號

      lngLastRow = wksDatas.Range(“A”& Rows.Count).End(xlUp).Row

      ‘標題字符串

      strPrompt = “請輸入2-” & lngLastRow & “之間的數字”

      ‘獲取要打印的行

      lRow =Application.InputBox(Prompt:=strPrompt, _

      Title:=”打印指定行”, _

      Type:=1)

      Debug.Print lRow

      ‘限定輸入的數字在數據范圍內

      If lRow > 1 And lRow < lngLastRow + 1Then

      ‘將數據工作表中的數據填入模板

      With wksDatas

      wksTable.Range(“B3”) =.Range(“A” & lRow)

      wksTable.Range(“F3”) =.Range(“B” & lRow)

      wksTable.Range(“B4”) =.Range(“C” & lRow)

      wksTable.Range(“D4”) =.Range(“D” & lRow)

      wksTable.Range(“F4”) =.Range(“E” & lRow)

      wksTable.Range(“B5”) =.Range(“F” & lRow)

      wksTable.Range(“F5”) =.Range(“G” & lRow)

      wksTable.Range(“B6”) =.Range(“H” & lRow)

      wksTable.Range(“F6”) =.Range(“I” & lRow)

      wksTable.Range(“B7”) =.Range(“J” & lRow)

      wksTable.Range(“B8”) =.Range(“K” & lRow)

      End With

      ‘打印

      wksTable.PrintOut

      Else

      MsgBox “輸入的行不存在!”

      End If

      End Sub

      運行代碼,彈出如所示的輸入框,可在其中輸入要打印數據所在的行號,實現數據打印。

      在其中輸入要打印數據所在的行號

      代碼的圖片版如下:

      代碼圖片

      使用用戶窗體指定要打印的行數據范圍

      首先,設計用戶窗體來獲取用戶輸入的數值,如下所示。用戶窗體名為urfNum,在兩個文本框

      txtStartRow和txtEndRow中分別輸入開始行和結束行的行號,單擊名為cmdOK的確定按鈕來打印。

      :用戶窗體設計

      用戶窗體模塊代碼:

      Private Sub cmdOK_Click()

      ‘數據記錄工作表變量

      Dim wksDatas As Worksheet

      ‘模板工作表變量

      Dim wksTable As Worksheet

      ‘數據記錄工作表中最后一行變量

      Dim lngLastRow As Long

      ‘循環變量

      Dim i As Long

      ‘開始行和結束行變量

      Dim lStartRow As Long

      Dim lEndRow As Long

      ‘將工作表賦給相應的變量

      Set wksDatas = Worksheets(“數據”)

      Set wksTable = Worksheets(“表格模板”)

      ‘獲取數據記錄工作表最后一行行號

      lngLastRow = wksDatas.Range(“A”& Rows.Count).End(xlUp).Row

      ‘忽略錯誤

      On Error Resume Next

      ‘獲取數據值

      lStartRow = CLng(txtStartRow.Text)

      lEndRow = CLng(txtEndRow.Text)

      If lStartRow > lEndRow Or lStartRow<2 or=”” lstartrow=””>lngLastRow Or lEndRow > lngLastRow Then

      MsgBox “數字不符合要求!”

      txtStartRow.Text = “”

      txtEndRow.Text = “”

      Exit Sub

      End If

      ‘遍歷數據記錄工作表中數據行

      ‘將相應數據填入模板工作表

      For i = lStartRow To lEndRow

      ‘將數據工作表中的數據填入模板

      With wksDatas

      wksTable.Range(“B3”) =.Range(“A” & i)

      wksTable.Range(“F3”) =.Range(“B” & i)

      wksTable.Range(“B4”) =.Range(“C” & i)

      wksTable.Range(“D4”) =.Range(“D” & i)

      wksTable.Range(“F4”) =.Range(“E” & i)

      wksTable.Range(“B5”) =.Range(“F” & i)

      wksTable.Range(“F5”) =.Range(“G” & i)

      wksTable.Range(“B6”) =.Range(“H” & i)

      wksTable.Range(“F6”) =.Range(“I” & i)

      wksTable.Range(“B7”) =.Range(“J” & i)

      wksTable.Range(“B8”) =.Range(“K” & i)

      End With

      ‘打印

      wksTable.PrintOut

      Next i

      ‘卸載用戶窗體

      Unload urfNum

      End Sub

      運行代碼后,將出現如下所示的輸入界面,可以在文本框中依次輸入要打印的起始行行號和結束行行號,來打印處于這兩行之間的數據。如果兩個行號相同,則只打印該行數據。

      :運行后要求輸入數字的界面

      下面是上述代碼的圖片版:

      版權聲明:本文內容由網絡用戶投稿,版權歸原作者所有,本站不擁有其著作權,亦不承擔相應法律責任。如果您發現本站中有涉嫌抄襲或描述失實的內容,請聯系我們jiasou666@gmail.com 處理,核實后本網站將在24小時內刪除侵權內容。

      版權聲明:本文內容由網絡用戶投稿,版權歸原作者所有,本站不擁有其著作權,亦不承擔相應法律責任。如果您發現本站中有涉嫌抄襲或描述失實的內容,請聯系我們jiasou666@gmail.com 處理,核實后本網站將在24小時內刪除侵權內容。

      上一篇:SPI通信協議基礎
      下一篇:銷售,是否僅取決于潛在客戶
      相關文章
      狠狠色伊人亚洲综合网站色| 亚洲午夜福利精品无码| 91在线精品亚洲一区二区| 亚洲人成色77777在线观看| 亚洲综合在线另类色区奇米| 亚洲免费中文字幕| 国产AV无码专区亚洲AV漫画| 亚洲精品无码激情AV| 国产精品亚洲专区在线观看| 亚洲国产成人高清在线观看| 亚洲AV无码成人网站在线观看| 亚洲视频在线播放| 亚洲熟妇少妇任你躁在线观看无码| gogo全球高清大胆亚洲| 亚洲伊人久久大香线蕉啊| 亚洲成AV人综合在线观看| 亚洲av中文无码乱人伦在线播放| 亚洲精品视频免费| 亚洲第一黄色网址| 亚洲AV无码成人精品区狼人影院| 亚洲狠狠婷婷综合久久| 亚洲欧洲国产综合| 久久精品国产亚洲av麻豆蜜芽| 狠狠色伊人亚洲综合网站色| 亚洲s码欧洲m码吹潮| 国产亚洲综合一区二区三区| 亚洲色偷偷偷综合网| 亚洲JIZZJIZZ妇女| 亚洲国产成人精品女人久久久 | AV在线播放日韩亚洲欧| 337p日本欧洲亚洲大胆裸体艺术 | 亚洲熟妇无码AV在线播放| 亚洲国产成人精品女人久久久| 久久国产成人亚洲精品影院| 国产成人 亚洲欧洲| 国产AV无码专区亚洲AV漫画| 亚洲成人激情在线| 亚洲喷奶水中文字幕电影| 亚洲日韩看片无码电影| 亚洲国产V高清在线观看| 亚洲日韩精品一区二区三区无码 |