Test di una selezione in Excel VBA
Questo programma in Excel VBA utilizza la proprietà Count, funzione IsNumeric, la funzione IsEmpty e il metodo Intersect per testare una selezione.
Situazione:
Posizionare un pulsante di comando nel foglio di lavoro e aggiungere le righe di codice che segue:
-
In primo luogo, si dichiara due oggetti Gamma. Chiamiamo la gamma di oggetti RNG e delle cellule.
Dim rng As Range, cell As Range
-
inizializzare il RNG Gamma oggetto con Range ( “C4: D10”) e la cella oggetto Range con l’intervallo selezionato.
Set rng = Range("C4:D10") Set cell = Selection
-
Aggiungere le seguenti righe di codice:
If cell.Count = 1 And IsNumeric(cell) And Not IsEmpty(cell) And Not Intersect(rng, cell) Is Nothing Then MsgBox "You win" Else MsgBox "You lose" End If
Spiegazione: Intersect (RNG, cellulare) restituisce un oggetto Range che rappresenta il collegamento : / VBA-esempi-union-Intersezione [intersezione]
dei due intervalli. Se questo oggetto intervallo non è nulla, il numero unico (prime tre condizioni) è nel range delimitato.
-
Verificare il programma.
Solo quando si seleziona un singolo numero compreso tra delimitato il risultato sarà:
In tutti gli altri casi il risultato sarà: