Cum se tipărește o foaie specifică pe baza valorilor celulei din Excel?
Ați încercat vreodată să imprimați anumite foi specifice pe baza unei valori a celulei? În acest articol, voi vorbi despre câteva exemple despre această problemă, dacă vă interesează această problemă, continuați.
Imprimați foaia pe baza unei celule cu VBA
Imprimați foaia pe baza celulei adiacente cu VBA
Imprimați foaia pe baza unei celule cu VBA
Presupunând că există două foi, doriți să imprimați Sheet1 sau Sheet2 sau ambele foi pe baza celulei A1 din Sheet1. Vă rugăm să faceți după cum urmează:
În acest caz, introduceți 1 indică pentru a imprima prima foaie, introduceți 2 pentru a imprima a doua foaie și 3 pentru a imprima ambele foi.
1. Introduceți 1, 2 sau 3 după cum trebuie să faceți A1 în prima foaie și apăsați Alt + F11 tastele pentru a deschide Microsoft Visual Basic pentru aplicații fereastră. Vedeți captura de ecran:
2. clic Insera > Module, și lipiți codul de mai jos în Module scenariu. Vedeți captura de ecran:
VBA: Tipărește foaia pe baza valorii celulei
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. presa F5 tasta pentru a imprima direct foaia (foile).
Imprimați foaia pe baza celulei adiacente cu VBA
Dacă aveți mai multe foi într-un registru de lucru și doriți să imprimați una sau mai multe foi pe baza valorilor celulei din acest registru de lucru, puteți face după cum urmează:
1. Creați o nouă foaie numită Foaie de control în registrul de lucru pe care îl utilizați și listați toate numele foii în coloana A (includeți sau excludeți foaia de control după cum aveți nevoie). Vedeți captura de ecran:
2. Tastați „imprima”În celula alăturată de lângă numele foii dacă doriți să o imprimați. Vedeți captura de ecran afișată.
3. presa Alt + F11 tastele pentru a activa Microsoft Visual Basic pentru aplicații fereastră și faceți clic pe Insera > Module. Vedeți captura de ecran :
4. Lipiți codul de mai jos în modul și apăsați F5 tasta pentru a rula codul.
VBA: Imprimați pe baza celulei adiacente
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
După rularea codului, foaia (foile) va fi tipărită chiar acum și, în același timp, o foaie de control nouă o va înlocui pe cea veche.
Kutools pentru Excel, cu mai mult de 300 funcții la îndemână, vă face munca mai ușoară. |

Cele mai bune instrumente de productivitate Office
Kutools pentru Excel vă rezolvă majoritatea problemelor și vă crește productivitatea cu 80%
- reutilizarea: Introduceți rapid formule complexe, diagrame și orice ai folosit anterior; Criptați celulele cu parola; Creați o listă de corespondență și trimiteți e-mailuri ...
- Super Formula Bar (editați cu ușurință mai multe linii de text și formulă); Layout de citire (citiți și editați cu ușurință un număr mare de celule); Lipiți la interval filtrat...
- Merge celule / rânduri / coloane fără a pierde date; Conținut de celule divizate; Combinați rânduri / coloane duplicate... Prevenirea celulelor duplicate; Comparați gamele...
- Selectați Duplicat sau Unic Rânduri; Selectați Rânduri goale (toate celulele sunt goale); Super Find și Fuzzy Find în multe cărți de lucru; Selectare aleatorie ...
- Copie exactă Mai multe celule fără modificarea referinței formulelor; Creați automat referințe la foi multiple; Introduceți gloanțe, Casete de selectare și multe altele ...
- Extrageți textul, Adăugați text, eliminați după poziție, Eliminați spațiul; Creați și imprimați subtotaluri de paginare; Convertiți conținutul dintre celule și comentarii...
- Super Filtru (salvați și aplicați scheme de filtrare altor foi); Sortare avansată după lună / săptămână / zi, frecvență și multe altele; Filtru special cu bold, italic ...
- Combinați cărți de lucru și foi de lucru; Merge Tables pe baza coloanelor cheie; Împărțiți datele în mai multe foi; Conversia în loturi xls, xlsx și PDF...
- Peste 300 de funcții puternice. Suportă Office / Excel 2007-2021 și 365. Acceptă toate limbile. Implementare ușoară în întreprinderea sau organizația dvs. Funcții complete Probă gratuită de 30 de zile. Garanție de returnare a banilor de 60 de zile.

Fila Office aduce interfața cu file în Office și vă face munca mult mai ușoară
- Activați editarea și citirea cu file în Word, Excel, PowerPoint, Publisher, Access, Visio și Project.
- Deschideți și creați mai multe documente în filele noi ale aceleiași ferestre, mai degrabă decât în ferestrele noi.
- Vă crește productivitatea cu 50% și reduce sute de clicuri de mouse pentru dvs. în fiecare zi!
