[英]When enter a number in a cell to select a range of cells and print them
我正在嘗試通過在單元格中輸入數字來創建范圍打印。 如果一個人輸入一個數字 20(這只是一個例子,對於真實的東西,它會掃描條形碼,並使用公式從另一個表格中獲取數字,但基本原理是這樣的)......所以當數字 20 輸入從 B 列中選擇前 20 行並打印此選擇的單元格。 然后刪除所有20行。
我只有打印代碼:
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
Dim celltxt As String
celltxt = ActiveSheet.Range("D2").Text
If InStr(1, celltxt, "") Then
Dim ws As Worksheet
For Each ws In Worksheets
If ws.Range("D2") <> "" Then
Range("D2").PrintOut
Range("E2").ClearContents
Application.SendKeys ("{LEFT}")
End If
Next ws
Else
End If
End Sub
如果單元格不為空,此代碼只是用於打印單元格的簡單代碼。 我正在使用它,但我需要按照上述想法對其進行升級。 :)
如果有人知道如何創建它,我將不勝感激,因為我只是一個 VBA 初學者。
我也用 FINALIZE 找到了解決方案
Private Sub Worksheet_Change(ByVal Target As Range)
Dim celltxt As String
Dim n As Range
'H2 is where the entry number is going to be
Set n = Worksheets("Sheet1").Range("H2")
On Error GoTo Finalise
'Select Column C and H2 number
ActiveSheet.Range(Cells(1, 3), Cells(n, 3)).Select
celltxt = ActiveSheet.Range("H2").Text
If InStr(1, celltxt, "") Then
Dim ws As Worksheet
For Each ws In Worksheets
If ws.Range("H2") <> "" Then
Selection.PrintOut
Range("H2").ClearContents
'Application.SendKeys ("{LEFT}")
End If
Next ws
Else
End If
Finalise:
Application.EnableEvents = True
ActiveSheet.Range("H2").Select
End Sub
下一步... 我怎樣才能使代碼從另一個工作表中獲取數據。 假設 H2 位於 sheet1 並且應該選擇的數據ActiveSheet.Range(Cells(1, 3), Cells(n, 3)).Select
位於 Sheet2。 在我的代碼末尾,我使用了ActiveSheet.Range("H2").Select
但仍然需要回到 Sheet1 中的 H2。
這之后我的步驟是在打印后清除所有選定的行內容。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.