Identificativo articolo: 291308 - Visualizza i prodotti a cui si riferisce l?articolo.
Espandi tutto | Chiudi tutto

In questa pagina

Informazioni

Microsoft fornisce esempi di programmazione a scopo puramente illustrativo, senza alcuna garanzia di qualsiasi tipo, sia espressa che implicita, ivi incluse, senza limitazioni, le garanzie implicite di commerciabilitā o idoneitā per uno scopo particolare. In questo articolo si presuppone che l'utente conosca il linguaggio di programmazione in questione e gli strumenti utilizzati per creare routine ed eseguire il debug. Gli esperti Microsoft sono autorizzati a fornire spiegazioni in merito alla funzionalitā di una particolare routine, ma in nessun caso a modificare questi esempi per fornire funzionalitā aggiuntive o a creare routine atte a soddisfare specifiche esigenze. Negli esempi riportati in questo articolo vengono utilizzati i metodi di Visual Basic elencati nella seguente tabella.
   Metodo             Argomenti
   ------------------------------------------
   Activate           nessuno
   Cells                 rowIndex, columnIndex
   Application.Goto   reference, scroll
   Offset             rowOffset, columnOffset
   Range             cell1
                      cell1, cell2
   Resize             rowSize, columnSize
   Select             nessuno
   Sheets             index (o sheetName)
   Workbooks     index (o bookName)
   End                 direction
   CurrentRegion      nessuno
				Negli esempi forniti in questo articolo vengono utilizzate le proprietā di Visual Basic elencate nella seguente tabella. <Formatting Type="FixedText"><![CDATA[
   Proprietā                 Utilizzo
   ---------------------------------------------------------------------
   ActiveSheet            per specificare il foglio attivo
   ActiveWorkbook    per specificare la cartella di lavoro attiva
   Columns.Count      per contare il numero di colonne nell'elemento specificato
   Rows.Count           per contare il numero di righe nell'elemento specificato
   Selection                per fare riferimento all'intervallo attualmente selezionato
				

1: selezione di una cella nel foglio di lavoro attivo

Per selezionare la cella D5 nel foglio di lavoro attivo, č possibile utilizzare uno degli esempi seguenti:
ActiveSheet.Cells(5, 4).Select
				
oppure
ActiveSheet.Range("D5").Select
				

2: selezione di una cella in un altro foglio di lavoro nella stessa cartella di lavoro

Per selezionare la cella E6 in un altro foglio di lavoro nella stessa cartella di lavoro, č possibile utilizzare uno degli esempi seguenti:
Application.Goto ActiveWorkbook.Sheets("Sheet2").Cells(6, 5)
				
   Oppure
				
Application.Goto (ActiveWorkbook.Sheets("Sheet2").Range("E6"))
				
In alternativa č possibile attivare il foglio di lavoro, quindi utilizzare il metodo 1 sopra descritto per selezionare la cella:
Sheets("Sheet2").Activate
ActiveSheet.Cells(6, 5).Select
				

3: selezione di una cella in un foglio di lavoro in una diversa cartella di lavoro

Per selezionare la cella F7 in un foglio di lavoro in una diversa cartella di lavoro, č possibile utilizzare uno degli esempi seguenti:
Application.Goto Workbooks("BOOK2.XLS").Sheets("Sheet1").Cells(7, 6)
				
Oppure
Application.Goto Workbooks("BOOK2.XLS").Sheets("Sheet1").Range("F7")
				
In alternativa č possibile attivare il foglio di lavoro, quindi utilizzare il metodo 1 sopra descritto per selezionare la cella:
Workbooks("BOOK2.XLS").Sheets("Sheet1").Activate
ActiveSheet.Cells(7, 6).Select
				

4: selezione di un intervallo di celle nel foglio di lavoro attivo

Per selezionare l'intervallo C2:D10 nel foglio di lavoro attivo, č possibile utilizzare uno qualsiasi degli esempi seguenti:
ActiveSheet.Range(Cells(2, 3), Cells(10, 4)).Select
				
ActiveSheet.Range("C2:D10").Select
				
ActiveSheet.Range("C2", "D10").Select
				

5: selezione di un intervallo di celle in un altro foglio di lavoro nella stessa cartella di lavoro

Per selezionare l'intervallo D3:E11 in un altro foglio di lavoro nella stessa cartella di lavoro, č possibile utilizzare uno degli esempi seguenti:
Application.Goto ActiveWorkbook.Sheets("Sheet3").Range("D3:E11")
				
Application.Goto ActiveWorkbook.Sheets("Sheet3").Range("D3", "E11")
				
In alternativa č possibile attivare il foglio di lavoro, quindi utilizzare il metodo 4 sopra descritto per selezionare l'intervallo:
Sheets("Sheet3").Activate
ActiveSheet.Range(Cells(3, 4), Cells(11, 5)).Select
				

6: selezione di un intervallo di celle in un foglio di lavoro in una diversa cartella di lavoro

Per selezionare l'intervallo E4:F12 in un foglio di lavoro in una diversa cartella di lavoro, č possibile utilizzare uno degli esempi seguenti:
Application.Goto Workbooks("BOOK2.XLS").Sheets("Sheet1").Range("E4:F12")
				
Application.Goto _
      Workbooks("BOOK2.XLS").Sheets("Sheet1").Range("E4", "F12")
				
In alternativa č possibile attivare il foglio di lavoro, quindi utilizzare il metodo 4 sopra descritto per selezionare l'intervallo:
Workbooks("BOOK2.XLS").Sheets("Sheet1").Activate
   ActiveSheet.Range(Cells(4, 5), Cells(12, 6)).Select
				

7: selezione di un intervallo denominato nel foglio di lavoro attivo

Per selezionare l'intervallo denominato "Test" nel foglio di lavoro attivo, č possibile utilizzare uno degli esempi seguenti:
Range("Test").Select
				
Application.Goto "Test"
				

8: selezione di un intervallo denominato in un altro foglio di lavoro nella stessa cartella di lavoro

Per selezionare l'intervallo denominato "Test" in un altro foglio di lavoro nella stessa cartella di lavoro, č possibile utilizzare l'esempio seguente:
Application.Goto Sheets("Sheet1").Range("Test")
				
In alternativa č possibile attivare il foglio di lavoro, quindi utilizzare il metodo 7 sopra descritto per selezionare l'intervallo denominato:
Sheets("Sheet1").Activate
Range("Test").Select
				

9: selezione di un intervallo denominato in un foglio di lavoro in una diversa cartella di lavoro

Per selezionare l'intervallo denominato "Test" in un foglio di lavoro in una diversa cartella di lavoro, č possibile utilizzare l'esempio seguente:
Application.Goto _
   Workbooks("BOOK2.XLS").Sheets("Sheet2").Range("Test")
				
In alternativa č possibile attivare il foglio di lavoro, quindi utilizzare il metodo 7 sopra descritto per selezionare l'intervallo denominato:
Workbooks("BOOK2.XLS").Sheets("Sheet2").Activate
Range("Test").Select
				

10: selezione di una cella relativa a un'altra cella attiva

Per selezionare una cella che si trova cinque righe sotto e quattro colonne a sinistra della cella attiva, č possibile utilizzare l'esempio seguente:
ActiveCell.Offset(5, -4).Select
				
Per selezionare una cella che si trova due righe sopra e tre colonne a destra della cella attiva, č possibile utilizzare l'esempio seguente:
ActiveCell.Offset(-2, 3).Select
				
Nota Se si tenta di selezionare una cella che si trova all'esterno del foglio di lavoro, verrā generato un errore. Il primo esempio sopra indicato restituirā un errore se la cella attiva si trova nelle colonne da A a D, in quanto lo spostamento di quattro colonne verso sinistra comporterebbe lo spostamento della cella attiva a un indirizzo di cella non valido.

11: selezione di una cella relativa a un'altra cella attiva

Per selezionare una cella che si trova cinque righe sotto e quattro colonne a destra della cella C7, č possibile utilizzare uno degli esempi seguenti:
ActiveSheet.Cells(7, 3).Offset(5, 4).Select
				
ActiveSheet.Range("C7").Offset(5, 4).Select
				

12: selezione di un intervallo di celle spostato rispetto a un intervallo specificato

Per selezionare un intervallo di celle con le stesse dimensioni dell'intervallo denominato "Test", ma spostato di quattro righe sotto e tre colonne a destra, č possibile utilizzare l'esempio seguente:
ActiveSheet.Range("Test").Offset(4, 3).Select
				
Se l'intervallo denominato si trova in un altro foglio di lavoro non attivo, attivare innanzitutto il foglio di lavoro, quindi selezionare l'intervallo utilizzando l'esempio seguente:
Sheets("Sheet3").Activate
ActiveSheet.Range("Test").Offset(4, 3).Select
				

13: selezione di un intervallo specificato e ridimensionamento della selezione

Per selezionare l'intervallo denominato "Database" ed estendere quindi la selezione di cinque righe, č possibile utilizzare l'esempio seguente:
Range("Database").Select
Selection.Resize(Selection.Rows.Count + 5, _
   Selection.Columns.Count).Select
				

14: selezione, spostamento e ridimensionamento di un intervallo specificato

Per selezionare un intervallo quattro righe sotto e tre colonne a destra dell'intervallo denominato "Database", includendo due righe e una colonna in pių dell'intervallo denominato, č possibile utilizzare l'esempio seguente:
Range("Database").Select
Selection.Offset(4, 3).Resize(Selection.Rows.Count + 2, _
   Selection.Columns.Count + 1).Select
				

15: selezione dell'unione di due o pių intervalli specificati

Per selezionare l'unione, ovvero l'area combinata, di due intervalli denominati "Test" e "Sample", č possibile utilizzare l'esempio seguente:
Application.Union(Range("Test"), Range("Sample")).Select
				
Per il corretto funzionamento di questo esempio, č necessario che entrambi gli intervalli si trovino nello stesso foglio di lavoro. Il metodo Union, inoltre, non puō essere utilizzato su fogli diversi. Ad esempio, la riga seguente funziona correttamente
Set y = Application.Union(Range("Sheet1!A1:B2"), Range("Sheet1!C3:D4"))
				
mentre la riga riportata di seguito
Set y = Application.Union(Range("Sheet1!A1:B2"), Range("Sheet2!C3:D4"))
				
restituisce un messaggio di errore analogo al seguente:
Errore nel metodo Union per la classe Application

16: selezione dell'intersezione di due o pių intervalli specificati

Per selezionare l'intersezione di due intervalli denominati "Test" e "Sample", č possibile utilizzare l'esempio seguente:
Application.Intersect(Range("Test"), Range("Sample")).Select
				
Per il corretto funzionamento di questo esempio, č necessario che entrambi gli intervalli si trovino nello stesso foglio di lavoro.



Negli esempi da 17 a 21 di questo articolo viene fatto riferimento al seguente set di dati di esempio. In ogni esempio č specificato l'intervallo di celle nei dati di esempio che verrā selezionato.
   A1: Nome    B1: Vendite    C1: Quantitā
   A2: a            B2: ? 10          C2: 5
   A3: b            B3:          C3: 10
   A4: c            B4: ? 10          C4: 5
   A5:         B5:          C5:
   A6: Totale   B6: ? 20          C6: 20
				

17: selezione dell'ultima cella di una colonna di dati contigui

Per selezionare l'ultima cella in una colonna contigua, utilizzare l'esempio seguente:
ActiveSheet.Range("a1").End(xlDown).Select
				
Se si utilizza questo codice con la tabella di esempio, verrā selezionata la cella A4.

18: selezione della cella vuota nella parte inferiore di una colonna di dati contigui

Per selezionare la cella al di sotto di un intervallo di celle contigue, utilizzare l'esempio seguente:
ActiveSheet.Range("a1").End(xlDown).Offset(1,0).Select
				
Se si utilizza questo codice con la tabella di esempio, verrā selezionata la cella A5.

19: selezione di un intero intervallo di celle contigue in una colonna

Per selezionare un intervallo di celle contigue in una colonna, utilizzare uno degli esempi seguenti:
ActiveSheet.Range("a1", ActiveSheet.Range("a1").End(xlDown)).Select
				
   Oppure
				
ActiveSheet.Range("a1:" & ActiveSheet.Range("a1"). _
      End(xlDown).Address).Select
				
Se si utilizza questo codice con la tabella di esempio, verranno selezionate le celle da A1 ad A4.

20: selezione di un intero intervallo di celle non contigue in una colonna

Per selezionare un intervallo di celle non contigue in una colonna, utilizzare uno degli esempi seguenti:
ActiveSheet.Range("a1",ActiveSheet.Range("a65536").End(xlUp)).Select
				
   Oppure
				
ActiveSheet.Range("a1:" & ActiveSheet.Range("a65536"). _
   End(xlUp).Address).Select
				
Se si utilizza questo codice con la tabella di esempio, verranno selezionate le celle da A1 ad A6.

21: selezione di un intervallo rettangolare di celle

Per selezionare un intervallo rettangolare di celle intorno a una cella, utilizzare il metodo CurrentRegion. L'intervallo selezionato dal metodo CurrentRegion č un'area delimitata da una combinazione qualsiasi di celle e colonne vuote. Di seguito č riportato un esempio di utilizzo del metodo CurrentRegion:
ActiveSheet.Range("a1").CurrentRegion.Select
				
Con questo codice verranno selezionate le celle da A1 a C4. Di seguito sono riportati altri esempi che consentono di selezionare lo stesso intervallo di celle:
ActiveSheet.Range("a1", _
   ActiveSheet.Range("a1").End(xlDown).End(xlToRight)).Select
				
   Oppure
				
ActiveSheet.Range("a1:" & _
   ActiveSheet.Range("a1").End(xlDown).End(xlToRight).Address).Select
				
In alcuni casi puō essere necessario selezionare le celle da A1 a C6. In questo esempio il metodo CurrentRegion non funzionerā, in quanto la riga 5 č vuota. Negli esempi seguenti verranno selezionate tutte le celle:
lastCol = ActiveSheet.Range("a1").End(xlToRight).Column
lastRow = ActiveSheet.Cells(65536, lastCol).End(xlUp).Row
ActiveSheet.Range("a1", ActiveSheet.Cells(lastRow, lastCol)).Select
				
    Oppure
				
lastCol = ActiveSheet.Range("a1").End(xlToRight).Column
lastRow = ActiveSheet.Cells(65536, lastCol).End(xlUp).Row
ActiveSheet.Range("a1:" & _
   ActiveSheet.Cells(lastRow, lastCol).Address).Select
				

22: selezione di pių colonne non contigue di lunghezza variabile

Per selezionare pių colonne non contigue di lunghezza variabile, utilizzare la tabella di esempio e l'esempio di macro seguenti:
   A1: 1  B1: 1  C1: 1  D1: 1
   A2: 2  B2: 2  C2: 2  D2: 2
   A3: 3  B3: 3  C3: 3  D3: 3
   A4:    B4: 4  C4: 4  D4: 4
   A5:    B5: 5   C5: 5  D5:
   A6:    B6:    C6: 6  D6:
				
StartRange = "A1"
EndRange = "C1"
Set a = Range(StartRange, Range(StartRange).End(xlDown))
Set b = Range(EndRange, Range(EndRange).End(xlDown))
Union(a,b).Select
				
Se si utilizza questo codice con la tabella di esempio, verranno selezionate le celle A1:A3 e C1:C6.

NOTE SUGLI ESEMPI

  • In genere č possibile omettere la proprietā ActiveSheet, essendo implicita se non viene denominato un foglio specifico. Ad esempio, anziché
    ActiveSheet.Range("D5").Select
    						
    č possibile utilizzare:
    Range("D5").Select
    						
  • Anche la proprietā ActiveWorkbook puō essere generalmente omessa. A meno che venga denominata una cartella di lavoro specifica, č implicita la cartella di lavoro attiva.
  • Quando si utilizza il metodo Application.Goto, per utilizzare due metodi Cells nel metodo Range quando l'intervallo specificato si trova in un altro foglio di lavoro non attivo, č necessario includere ogni volta l'oggetto Sheets. Ad esempio:
    Application.Goto Sheets("Sheet1").Range( _
          Sheets("Sheet1").Range(Sheets("Sheet1").Cells(2, 3), _
          Sheets("Sheet1").Cells(4, 5)))
    					
  • Per qualsiasi elemento tra virgolette, ad esempio l'intervallo denominato "Test", č inoltre possibile utilizzare una variabile il cui valore sia una stringa di testo. Ad esempio, anziché
    ActiveWorkbook.Sheets("Sheet1").Activate
    						
    č possibile utilizzare
    ActiveWorkbook.Sheets(myVar).Activate
    						
    dove il valore di myVar č "Sheet1".

Riferimenti


Per ulteriori informazioni sull'utilizzo del codice di esempio riportato in questo articolo, fare clic sul numero dell'articolo della Microsoft Knowledge Base riportato di seguito:
290140 Esecuzione del codice di esempio per i programmi di Office XP contenuto negli articoli della Knowledge Base

Proprietā

Identificativo articolo: 291308 - Ultima modifica: domenica 9 marzo 2014 - Revisione: 3.0
Le informazioni in questo articolo si applicano a:
  • Microsoft Office Excel 2003
  • Microsoft Office Excel 2007
  • Microsoft Excel 2010
Chiavi: 
kbautomation kbmacro kbdtacode kbhowto kbprogramming KB291308
LE INFORMAZIONI CONTENUTE NELLA MICROSOFT KNOWLEDGE BASE SONO FORNITE SENZA GARANZIA DI ALCUN TIPO, IMPLICITA OD ESPLICITA, COMPRESA QUELLA RIGUARDO ALLA COMMERCIALIZZAZIONE E/O COMPATIBILITA' IN IMPIEGHI PARTICOLARI. L'UTENTE SI ASSUME L'INTERA RESPONSABILITA' PER L'UTILIZZO DI QUESTE INFORMAZIONI. IN NESSUN CASO MICROSOFT CORPORATION E I SUOI FORNITORI SI RENDONO RESPONSABILI PER DANNI DIRETTI, INDIRETTI O ACCIDENTALI CHE POSSANO PROVOCARE PERDITA DI DENARO O DI DATI, ANCHE SE MICROSOFT O I SUOI FORNITORI FOSSERO STATI AVVISATI. IL DOCUMENTO PUO' ESSERE COPIATO E DISTRIBUITO ALLE SEGUENTI CONDIZIONI: 1) IL TESTO DEVE ESSERE COPIATO INTEGRALMENTE E TUTTE LE PAGINE DEVONO ESSERE INCLUSE. 2) I PROGRAMMI SE PRESENTI, DEVONO ESSERE COPIATI SENZA MODIFICHE, 3) IL DOCUMENTO DEVE ESSERE DISTRIBUITO INTERAMENTE IN OGNI SUA PARTE. 4) IL DOCUMENTO NON PUO' ESSERE DISTRIBUITO A SCOPO DI LUCRO.

Invia suggerimenti

 

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com