giovedì 17 luglio 2008

Eliminiamo grafici in Excel con VBA

Oggi vediamo come eliminare grafici in Excel usando VBA.
Supponiamo di avere diversi fogli di lavoro che contengono dei grafici (1, 2 tanti in ogni foglio, non importa). Ora vogliamo eliminarli tutti in automatico. VBA ci viene in aiuto.
Come ho raccontato nell'altro post, andiamo su Strumenti-Macro-Visual Basic Editor e poi digitiamo questo:

Sub EliminaGrafici()
Dim crt As ChartObject

Dim wks As Worksheet
For Each wks In ActiveWorkbook.Worksheets

For Each crt In wks.ChartObjects
crt.Delete
Next
Next
End Sub


E' molto simile all'altro esempio che ho fatto la volta scorsa. In pratica, per ogni foglio della mia cartella di lavoro, elimino tutti i grafici che contiene. Sono due "cicli" uno dentro l'altro. Con quello esterno (For Each wks In ActiveWorkbook.Worksheets) passo in rassegna tutti i fogli presenti. Con quello interno (For Each crt In wks.ChartObjects), passo in rassegna gli eventuali oggetti grafici presenti in ciascun foglio e li elimino.

La prossima volta proviamo a vedere a che cosa servono le macro e cerchiamo di capire la differenza che (non) c'è tra VBA e le macro!

Emanuele

Nessun commento: