Как да отпечатате конкретен лист въз основа на стойности на клетки в Excel?
Опитвали ли сте някога да отпечатате някои конкретни листове въз основа на стойност на клетка? В тази статия ще говоря за някои примери за този проблем, ако се интересувате от този проблем, моля, продължете.
Печат на лист на базата на клетка с VBA
Печат на лист въз основа на съседна клетка с VBA
Печат на лист на базата на клетка с VBA
Да предположим, че има два листа, искате да отпечатате Sheet1 или Sheet2 или и двата листа въз основа на клетка A1 в Sheet1. Моля, направете следното:
В този случай въвеждането на 1 означава да отпечатате първия лист, въведете 2, за да отпечатате втория лист, и 3, за да отпечатате и двата листа.
1. Въведете 1, 2 или 3, както е необходимо за A1 в първия лист, и натиснете Alt + F11 бутони за отваряне Microsoft Visual Basic за приложения прозорец. Вижте екранна снимка:
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
3. Натиснете F5 клавиш за директно отпечатване на листа(ите).
Печат на лист въз основа на съседна клетка с VBA
Ако имате няколко листа в работна книга и искате да отпечатате един или няколко листа въз основа на стойностите на клетки от тази работна книга, можете да направите следното:
1. Създайте нов лист с име Контролен лист в работната книга, която използвате, и избройте имената на всички листове в колона A (включете или изключете контролния лист според нуждите). Вижте екранна снимка:
2. Тип "печат” в съседната клетка до името на листа, ако искате да го отпечатате. Вижте показаната екранна снимка.
3. Натиснете Alt + F11 клавиши за активиране на Microsoft Visual Basic за приложения прозорец и щракнете Поставете > Модули. Вижте екранна снимка:
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
След стартиране на кода, листът(овете) ще бъдат отпечатани веднага и в същото време нов контролен лист ще замени стария.
Kutools за Excel, с повече от 300 удобни функции, прави работата ви по-лесна. |
Най-добрите инструменти за продуктивност в офиса
Усъвършенствайте уменията си за Excel с Kutools за Excel и изпитайте ефективност, както никога досега. Kutools за Excel предлага над 300 разширени функции за повишаване на производителността и спестяване на време. Щракнете тук, за да получите функцията, от която се нуждаете най-много...
Раздел Office Внася интерфейс с раздели в Office и прави работата ви много по-лесна
- Разрешете редактиране и четене с раздели в Word, Excel, PowerPoint, Publisher, Access, Visio и Project.
- Отваряйте и създавайте множество документи в нови раздели на един и същ прозорец, а не в нови прозорци.
- Увеличава вашата производителност с 50% и намалява стотици кликвания на мишката за вас всеки ден!