Theresa si chiede se esiste un modo per formattare una cella in modo che se il contenuto della cella soddisfa determinati criteri, viene stampato automaticamente un foglio di lavoro specifico. La risposta breve è no, non è possibile utilizzare la formattazione per raggiungere questo obiettivo. È tuttavia possibile utilizzare una macro del gestore eventi per eseguire la stampa.

Ad esempio, uno dei gestori di eventi supportati da Excel viene attivato ogni volta che viene modificato qualcosa nella cartella di lavoro. È possibile creare un gestore di eventi che esamini quale cella è stata modificata. Se si tratta di una cella specifica e se quella cella contiene un valore particolare, è possibile stampare un foglio di lavoro.

Private Sub Worksheet_Change(ByVal Target As Range)

If Target.Address = "B2" Then         If Target.Value = 1001 Then             Worksheets(1).PrintOut         End If     End If End Sub

Questa macro esamina quale cella è stata modificata. Se era la cella B2 e se la cella contiene il valore 1001, il foglio di lavoro viene stampato automaticamente.

Naturalmente, potresti volere che il contenuto di una particolare cella controlli ciò che viene stampato quando qualcuno sceglie effettivamente di stampare. Ad esempio, se l’utente sceglie di stampare, potresti voler esaminare il contenuto di una cella (come E2) e, in base al contenuto di quella cella, modificare automaticamente ciò che viene stampato. La seguente macro adotta questo approccio:

Private Sub Workbook_BeforePrint(Cancel As Boolean)

Application.EnableEvents = False     Select Case Worksheets("Sheet1").Range("E1")

Case 1             Worksheets("Sheet1").PrintOut         Case 2             Worksheets("Sheet2").PrintOut         Case 3             Worksheets("Sheet3").PrintOut         Case 4             Worksheets("Sheet4").PrintOut         Case Else             ActiveSheet.PrintOut     End Select     Cancel = True     Application.EnableEvents = True End Sub

La macro stampa Foglio1, Foglio2, Foglio3 o Foglio4 a seconda che la cella E2 contenga 1, 2, 3 o 4.

_Nota: _

Se desideri sapere come utilizzare le macro descritte in questa pagina (o in qualsiasi altra pagina dei siti ExcelTips), ho preparato una pagina speciale che include informazioni utili.

ExcelTips è la tua fonte di formazione economica su Microsoft Excel.

Questo suggerimento (11578) si applica a Microsoft Excel 2007, 2010, 2013 e 2016.

Puoi trovare una versione di questo suggerimento per la vecchia interfaccia del menu di Excel qui: