SE OR non sono una singola istruzione queste sono due funzioni logiche che vengono utilizzate insieme alcune volte in VBA, usiamo queste due funzioni logiche insieme quando abbiamo più di un criterio con cui verificare e se uno qualsiasi dei criteri è soddisfatto otteniamo il vero risultato, quando usiamo l'istruzione if, l'istruzione Or viene utilizzata tra i due criteri dell'istruzione If.
IF OR Funzione in VBA
Le funzioni logiche sono il cuore di qualsiasi calcolo basato su criteri. "IF" è la funzione logica più popolare sia come funzione foglio di lavoro che come funzione VBA, serve in modo eccellente per le nostre esigenze. Ma un'altra funzione logica "OR" in Excel è la funzione più sottovalutata. È anche importante padroneggiare quando si tratta di risolvere calcoli complessi. In questo articolo, ti guideremo attraverso la funzione IF OR di VBA in dettaglio. Leggi l'articolo completo per ottenere la funzione in dettaglio.
Come utilizzare IF con la funzione OR in VBA?
Ti mostreremo un semplice esempio di utilizzo della funzione IF OR in VBA.
Puoi scaricare questo modello VBA IF O Excel qui - VBA IF OR Excel TemplateLa combinazione di funzioni logiche è le migliori coppie in Excel. Quando si combinano molte formule logiche all'interno dell'altra formula logica, si suggerisce che il calcolo richiede molte condizioni da verificare.
Ora, guarda la sintassi della funzione IF OR in VBA.
[Test] O [Test] OR [Test]
È lo stesso che abbiamo visto nell'esempio del foglio di lavoro. Per una migliore comprensione guarda l'esempio sotto.
Abbiamo il prezzo del mese precedente, il prezzo medio degli ultimi 6 mesi e il prezzo mensile corrente qui.
Per decidere se acquistare o meno il prodotto, dobbiamo fare alcuni test qui e quei test sono.
Se il prezzo corrente è inferiore o uguale a uno qualsiasi degli altri due prezzi, dovremmo ottenere il risultato come "Acquista", altrimenti dovremmo ottenere il risultato come "Non acquistare" .
Passaggio 1: aprire la condizione IF all'interno della sottoprocedura.
Codice:
Sub IF_OR_Example1 () If End Sub
Passaggio 2: all'interno della condizione IF applicare il primo test logico come intervallo ("D2"). Valore <= intervallo ("B2"). Valore
Codice:
Sub IF_OR_Example1 () If Range ("D2"). Value <= Range ("B2"). Value End Sub
Passaggio 3: la prima condizione logica è eseguita, ora l'istruzione OR aperta.
Codice:
Sub IF_OR_Example1 () If Range ("D2"). Value <= Range ("B2"). Value OR End Sub
Passaggio 4: ora applica la seconda condizione logica come intervallo ("D2"). Valore <= intervallo ("C2"). Valore
Codice:
Sub IF_OR_Example1 () If Range ("D2"). Value <= Range ("B2"). Value OR Range ("D2"). Value <= Range ("C2"). Value End Sub
Passaggio 5: Ok, abbiamo finito con i test logici qui. Dopo i test logici mettere la parola "Allora".
Codice:
Sub IF_OR_Example1 () If Range ("D2"). Value <= Range ("B2"). Value Or Range ("D2"). Value <= Range ("C2"). Value Then End Sub
Passaggio 6: nella riga successiva scrivi quale dovrebbe essere il risultato se il test logico è VERO. Se la condizione è TRUE, abbiamo bisogno del risultato come "Acquista" nella cella E2.
Codice:
Sub IF_OR_Example1 () If Range ("D2"). Value <= Range ("B2"). Value Or Range ("D2"). Value <= Range ("C2"). Value Then Range ("E2"). Valore = "Acquista" End Sub
Passaggio 7: se il risultato è FALSO, dovremmo ottenere il risultato come "Non acquistare". Quindi nella riga successiva metti "Else" e scrivi il codice nella riga successiva.
Codice:
Sub IF_OR_Example1 () If Range ("D2"). Value <= Range ("B2"). Value Or Range ("D2"). Value <= Range ("C2"). Value Then Range ("E2"). Valore = "Acquista" altro intervallo ("E2"). Valore = "Non acquistare" End Sub
Passaggio 8: chiudere l'istruzione IF con la parola "End If".
Codice:
Sub IF_OR_Example1 () If Range ("D2"). Value <= Range ("B2"). Value Or Range ("D2"). Value <= Range ("C2"). Value Then Range ("E2"). Value = "Buy" Else Range ("E2") Value = "Do Not Buy" End If End Sub
Ok, abbiamo finito con la parte di codifica.
Eseguiamo questo codice utilizzando F5 o manualmente tramite l'opzione di esecuzione e vediamo qual è il risultato nella cella E2.
Abbiamo ottenuto il risultato come "Acquista" perché il prezzo mensile corrente di Apple è inferiore al prezzo sia del "mese precedente" sia del "Prezzo medio di 6 mesi".
Funzione IF OR VBA con loop (avanzata)
Una volta compresa la formula, prova a usarla con un numero maggiore di celle. Nel caso di un numero maggiore di celle, non possiamo scrivere alcuna riga di codice, quindi dobbiamo usare i loop VBA.
Per la serie di dati sopra, ho aggiunto qualche riga in più.
Dobbiamo usare il ciclo For Next qui.
Mantieni il codice corrente così com'è.
Dichiara la variabile come numero intero.
Ora apri For Next Loop da 2 a 9.
Ora, ovunque abbiamo il riferimento di cella, cambia il numero corrente e concateniamo la variabile "k" con loro.
Ad esempio Intervallo ("D2"). Il valore deve essere Intervallo ("D" & k) .Valore
Ora esegui il codice dovremmo ottenere lo stato in tutte le celle.
Puoi copiare il codice qui sotto.
Codice:
Sub IF_OR_Example1() Dim k As Integer For k = 2 To 9 If Range("D" & k).Value <= Range("B" & k).Value Or Range("D" & k).Value <= Range("C" & k).Value Then Range("E" & k).Value = "Buy" Else Range("E" & k).Value = "Do Not Buy" End If Next k End Sub