Come utilizzare la struttura Select Case in Excel 2016 VBA

Come utilizzare la struttura Select Case in Excel 2016 VBA

La struttura Select Case è un'utile struttura VBA per le decisioni che coinvolgono tre o più opzioni in Excel 2016 (sebbene funzioni anche con due opzioni, fornendo un'alternativa alla struttura If-Then-Else).

Un esempio di caso selezionato

L'esempio seguente mostra come utilizzare la struttura Seleziona caso:

Sotto MostraSconto3()
  Dim quantità come lungo
  Sconto dim come doppio
  Quantità = InputBox ("Inserisci quantità: ")
  Seleziona la quantità del caso
    Caso da 0 a 24
      Sconto = 0.1
    Caso da 25 a 49
      Sconto = 0,15
    Caso da 50 a 74
      Sconto = 0.2
    Il caso è >= 75
      Sconto = 0.25
  Fine selezione
  MsgBox “Sconto: “ & Sconto
Fine sottotitolo

In questo esempio, viene valutata la variabile Quantità. La routine controlla quattro casi diversi (0-24, 25-49, 50-74 e 75 o più).

Qualsiasi numero di istruzioni può seguire ogni istruzione Case e tutte vengono eseguite se il caso è vero. Se utilizzi solo un'istruzione, come in questo esempio, puoi inserire l'istruzione sulla stessa riga della parola chiave Case, preceduta da due punti, il carattere separatore dell'istruzione VBA. Questo rende il codice più compatto e un po' più chiaro. Ecco come appare la routine in questo formato:

Sotto MostraSconto4 ()
  Dim quantità come lungo
  Sconto dim come doppio
  Quantità = InputBox ("Inserisci quantità: ")
  Seleziona la quantità del caso
    Caso da 0 a 24: Sconto = 0,1
    Caso da 25 a 49: Sconto = 0,15
    Caso da 50 a 74: Sconto = 0.2
    Il caso è >= 75: Sconto = 0,25
  Fine selezione
  MsgBox “Sconto: “ & Sconto
Fine sottotitolo

Quando VBA esegue una struttura Select Case, la struttura viene chiusa non appena VBA trova un caso vero ed esegue le istruzioni per quel caso.

Un esempio di Select Case annidato

Come illustrato nell'esempio seguente, è possibile nidificare le strutture Select Case. Questa routine esamina la cella attiva e visualizza un messaggio che descrive il contenuto della cella. Si noti che la procedura ha tre strutture Select Case e ciascuna ha la propria istruzione End Select:

Sub CheckCell()
  Dim Msg As String
  Seleziona Case IsEmpty(ActiveCell)
    Caso vero
     Msg = "è vuoto".
    Caso Altro
     Seleziona Case ActiveCell.HasFormula
       Caso vero
        Msg = “ha una formula”
       Caso Altro
        Seleziona Case IsNumeric(ActiveCell)
          Caso vero
           Msg = “ha un numero”
          Caso Altro
           Msg = "ha del testo"
        Fine selezione
    Fine selezione
  Fine selezione
  MsgBox “Cell “ & ActiveCell.Address & “ “ & Msg
Fine sottotitolo

La logica è più o meno così:

Scopri se la cella è vuota.

Se non è vuoto, controlla se contiene una formula.

Se non c'è una formula, scopri se contiene un valore numerico o un testo.

Al termine della routine, la variabile Msg contiene una stringa che descrive il contenuto della cella. La funzione MsgBox visualizza quel messaggio.

Come utilizzare la struttura Select Case in Excel 2016 VBA

Un messaggio visualizzato dalla procedura CheckCell.

È possibile nidificare le strutture Select Case quanto necessario, ma assicurarsi che ogni istruzione Select Case abbia un'istruzione End Select corrispondente.

Se non sei ancora convinto che l'indentazione del codice valga la pena, l'elenco precedente funge da buon esempio. Le rientranze davvero per rendere chiari i livelli di nidificazione. Dai un'occhiata alla stessa procedura senza alcun rientro:

Sub CheckCell()
Dim Msg As String
Seleziona Case IsEmpty(ActiveCell)
Caso vero
Msg = "è vuoto".
Caso Altro
Seleziona Case ActiveCell.HasFormula
Caso vero
Msg = “ha una formula”
Caso Altro
Seleziona Case IsNumeric(ActiveCell)
Caso vero
Msg = “ha un numero”
Caso Altro
Msg = "ha del testo"
Fine selezione
Fine selezione
Fine selezione
MsgBox “Cell “ & ActiveCell.Address & “ “ & Msg
Fine sottotitolo

Abbastanza incomprensibile, eh?


Smartsheet 9.1.1

Smartsheet 9.1.1

Smartsheet è una piattaforma di lavoro dinamica che ti consente di gestire progetti, creare flussi di lavoro e collaborare con il tuo team.

SharePoint

SharePoint

SharePoint è un sistema di collaborazione basato sul Web che utilizza una varietà di applicazioni per flussi di lavoro, database di "elenco" e altri componenti Web, nonché funzionalità di sicurezza per fornire controllo ai gruppi aziendali che lavorano insieme.

Calendario perpetuo 1.0.38/1.0.36

Calendario perpetuo 1.0.38/1.0.36

Van Nien Calendar è un'applicazione per la visualizzazione del calendario sul tuo telefono, che ti aiuta a vedere rapidamente la data lunisolare sul tuo telefono, organizzando così il tuo lavoro importante.

Microsoft Outlook 2021

Microsoft Outlook 2021

Microsoft Outlook è un'applicazione aziendale e di produttività sviluppata da Microsoft Corporation.

Fare clic su

Fare clic su

ClickUp è una delle piattaforme di produttività più apprezzate per qualsiasi azienda. Grandi aziende come Google, Booking.com, San Diego Padres e Uber utilizzano ClickUp per aumentare la produttività sul posto di lavoro.

Visualizzatore PDF-XChange 2.5.322.10

Visualizzatore PDF-XChange 2.5.322.10

Il PDF è diventato un formato comunemente utilizzato per leggere, creare e inviare documenti di testo. A sua volta, c'è stato un aumento del numero di programmi utilizzati per questo tipo di documentazione. PDF-XChange Viewer fa parte di un numero crescente di visualizzatori PDF.

Apache OpenOffice

Apache OpenOffice

Apache OpenOffice offre una suite completa di applicazioni Office che rivaleggiano con Microsoft 365, in particolare in Excel, PowerPoint e Word. Ti consente di gestire i tuoi progetti in modo più efficace e supporta diversi formati di file.

Scarica iTaxviewer 1.8.7

Scarica iTaxviewer 1.8.7

Il software iTaxViewer è il software di lettura di file XML più popolare oggi. Questo software è un'applicazione per la lettura delle dichiarazioni fiscali elettroniche in formato XML del Dipartimento Generale delle Imposte.

Lettore PDF Nitro

Lettore PDF Nitro

Nitro PDF Reader è un pratico editor PDF che copre tutte le attività di base che la maggior parte delle persone esegue ogni giorno con i documenti PDF.

Foxit Reader 12

Foxit Reader 12

Foxit Reader è principalmente un lettore PDF e consente anche di creare file PDF, firmarli, modificarli e aggiungere annotazioni. Funziona su sistemi operativi, ci sono plugin per vari programmi del pacchetto Microsoft Office.