Le proprieta Cells

    
    La proprietà Cells restituisce un oggetto che rappresenta tutte le celle del foglio di lavoro attivo. Se il documento attivo non è un foglio di lavoro, questa proprietà genererà un errore. Proprietà di sola lettura.
    La modalità di utilizzo è Cells(row, column) dove row è l'indice di riga e column è l'indice di colonna, per restituire una singola cella. Questo esempio imposta il valore della cella A1 a 24.

    	Worksheets(1).Cells(1, 1).Value = 24
    Questo esempio imposta la formula della cella A2.

    	ActiveSheet.Cells(2, 1).Formula = "=Sum(B1:B5)"
    Benché sia possibile utilizzare anche Range("A1") per restituire la cella A1, in alcuni casi la proprietà Cells risulta più conveniente, grazie al fatto di poter utilizzare delle variabili per la riga o la colonna. Questo esempio crea le intestazioni di riga e di colonna di Foglio1. Quando il foglio di lavoro è stato attivato, la proprietà Cells può essere utilizzata senza dichiarare esplicitamente il foglio. La proprietà restituisce infatti una cella del foglio attivo.

    	Sub SetUpTable()
    	Worksheets("Foglio1").Activate
    	For TheYear = 1 To 5
    	    Cells(1, TheYear + 1).Value = 1990 + TheYear
    	Next TheYear
    	For TheQuarter = 1 To 4
    	    Cells(TheQuarter + 1, 1).Value = "Q" & TheQuarter
    	Next TheQuarter
    	End Sub
    	
    Per restituire parte di un intervallo, utilizzare espressione.Cells(row, column), dove espressione restituisce un oggetto Range e row e column sono relative all'angolo superiore sinistro dell'intervallo. Questo esempio imposta la formula della cella C5.

    	Worksheets(1).Range("C5:C10").Cells(1, 1).Formula = "=Rand()"
    	
    E’ anche possibile utilizzare Range(cell1, cell2), dove cell1 e cell2 sono oggetti Range restituiti dalla proprietà Cells(row, column) che specificano la cella iniziale e la cella finale dell'intervallo. Questo esempio imposta lo stile della linea del bordo delle celle dell'intervallo A1:J10.

    	With Worksheets(1)
    	    .Range(.Cells(1, 1), _
    	        .Cells(10, 10)).Borders.LineStyle = xlThick
    	End With
    	
    L'istruzione With consente di eseguire una serie di istruzioni su un oggetto specificato senza riqualificare il nome dell'oggetto. Affinché alla proprietà venga applicato l’oggetto dell'istruzione With, è necessario che ogni occorrenza della proprietà sia preceduta da un punto. In questo caso il punto indica che le celle si trovano sul foglio di lavoro 1. Senza il punto, la proprietà Cells avrebbe restituito le celle del foglio attivo.
    Quando si utilizzano selezioni multiple, la proprietà Areas si rivela particolarmente utile. Essa consente di dividere una selezione multipla in singoli oggetti Range, i quali vengono quindi restituiti sotto forma di insieme. È possibile applicare la proprietà Count all'insieme restituito per verificare la presenza di una selezione multipla, come illustrato nel seguente esempio.

    	Sub NoMultiArea ()
    	    NumberOfSelectedAreas = Selection.Areas.Count
    	    If NumberOfSelectedAreas > 1 Then
    	        MsgBox "Non puoi eseguire questo comando " & _
    	            "su selezioni multiarea"
    	    End If
    	End Sub
    	
    Questo esempio imposta a 14 punti le dimensioni del carattere della cella C5 di Foglio1.

    	Worksheets("Foglio1").Cells(5, 3).Font.Size = 14
    	
    Questo esempio cancella la formula nella cella 1 di Foglio1.

    	Worksheets("Foglio1").Cells(1).ClearContents
    	
    Questo esempio imposta ad Arial 8 punti il carattere di tutte le celle di Foglio1.

    	With Worksheets("Foglio1").Cells.Font
    	    .Name = "Arial"
    	    .Size = 8
    	End With
    	
    Questo esempio esegue un ciclo sulle celle comprese tra A1 e J4. Il valore delle celle contenenti un valore inferiore a 0,001 viene sostituito con zero (0).

    	For rwIndex = 1 to 4
     	   For colIndex = 1 to 10
    	        With Worksheets("Foglio1").Cells(rwIndex, colIndex)
    	            If .Value < .001 Then .Value = 0
    	        End With
    	    Next colIndex
    	Next rwIndex
    	
    Questo esempio imposta a corsivo lo stile del carattere delle celle comprese tra A1 e C5.

    	Worksheets("Foglio1").Activate
    	Range(Cells(1, 1), Cells(5, 3)).Font.Italic = True
    	

    La proprietà Offset

    Per restituire un intervallo a una distanza specificata da un altro intervallo, utilizzare Offset(row, column), dove row e column rappresentano gli scarti di riga e di colonna. Questo esempio seleziona la cella che si trova tre righe più in basso e una colonna più a destra rispetto alla cella posizionata all'angolo superiore sinistro della selezione corrente. Dal momento che è possibile selezionare solo le celle che si trovano sul foglio attivo, sarà necessario prima attivare il foglio di lavoro.

    	Worksheets("Foglio1").Activate
    	Selection.Offset(3, 1).Range("A1").Select
    	

    Il metodo Union

    Per restituire intervalli multipli, vale a dire composti da due o più blocchi contigui di celle, utilizzare Union(range1, range2, ...). Questo esempio crea un oggetto definito come l'unione degli intervalli A1:B2 e C3:D4 e lo seleziona.

    	Dim r1 As Range, r2 As Range, myMultiAreaRange As Range
    	Worksheets("Foglio1").Activate
    	Set r1 = Range("A1:B2")
    	Set r2 = Range("C3:D4")
    	Set myMultiAreaRange = Union(r1, r2)
    	myMultiAreaRange.Select
    	
    marius44(M.A.)-albatros54(G.A.) © 2016