questo comado identifica l'area rettangolare con all'interno tutte le celleusate.
sintassi:
ActiveSheet.UsedRange
esempio: modifico colori delle celle usate
Set zona = ActiveSheet.UsedRange setto zona tutte le celle usate nel foglio di lavoro attivo
With zona con il comando with cambio i colori di tutta zona
.Font.ColorIndex = 0End With
.Font.Bold = False
esempio: istruzioni su celle usate
Dim cella As Range
Set zona = ActiveSheet.UsedRange definisco zona con comando Set
For Each cella In zona
....Next
- .SpecialCells
si possono indicare delle celle usate speciali "SpecialCells" il quale fa riferimento a tutte le celle che risponderanno al "tipo" specificato, in modo da restringere l'area:
Attento il comando genera un errore in caso non ci siano celle che soddifano questo criterio
va quindi usato il comando On Error per risolvere
sintassi:
ActiveSheet.UsedRange.SpecialCells(opzione)opzioni:
- xlCellTypeAllFormatConditions celle con qualunque formato
- xlCellTypeAllValidation celle con criteri di validazione
- xlCellTypeBlanks celle vuote
- xlCellTypeComments celle contenenti note
- xlCellTypeConstants celle contenenti costanti
- xlCellTypeFormulas celle contenenti formule
- xlCellTypeLastCell ultima cella del foglio di lavoro
- xlCellTypeVisible tutte le celle visibili
esempio:
Set LastCell = ActiveSheet.UsedRange.SpecialCells(xlCellTypeLastCell) setto LastCell come area usata dalla cella usata all'ultima fino a destra-basso
Range(Range("F13"), LastCell).Select seleziono le celle usate dalla F13 l'area rettangolare fino al'ultima usata a destra-basso
esempio: tolgo tutte le validazioni errate con #REF! in tutto il file
' variabiliDim scheda As Worksheet' ciclo togli validazione REF
Dim cella As Range
For Each scheda In WorksheetsSheets(scheda.Name).SelectNext scheda
On Error Resume Next dato che il comando da errore se non trova celle compatibili va usato On ErrorSet Tutto = ActiveSheet.UsedRange.SpecialCells(xlCellTypeAllValidation)On Error GoTo 0
For Each cella In TuttoIf InStr(cella.Validation.Formula1, "#REF!") > 0 Then cella.Validation.DeleteNext cella