Com utilitzar lestructura de cas de selecció a Excel 2016 VBA

L'estructura Select Case és una estructura VBA útil per a decisions que impliquen tres o més opcions a Excel 2016 (tot i que també funciona amb dues opcions, proporcionant una alternativa a l'estructura If-Then-Else).

Un exemple de selecció de cas

L'exemple següent mostra com utilitzar l'estructura Selecciona cas:

Sub ShowDiscount3()
  Dim Quantitat As Long
  Redueix el descompte com a doble
  Quantitat = InputBox("Introdueix la quantitat: ")
  Seleccioneu Quantitat de caixa
    Cas 0 a 24
      Descompte = 0,1
    Cas 25 a 49
      Descompte = 0,15
    Cas 50 a 74
      Descompte = 0,2
    El cas és >= 75
      Descompte = 0,25
  Finalitzar la selecció
  MsgBox "Descompte: " & Descompte
End Sub

En aquest exemple, s'està avaluant la variable Quantitat. La rutina comprova quatre casos diferents (0–24, 25–49, 50–74 i 75 o més).

Cada instrucció Case pot seguir qualsevol nombre d'instruccions, i totes s'executen si el cas és cert. Si només feu servir una instrucció, com en aquest exemple, podeu posar la sentència a la mateixa línia que la paraula clau Case, precedida de dos punts: el caràcter separador de la instrucció VBA. Això fa que el codi sigui més compacte i una mica més clar. Així és com es veu la rutina en aquest format:

Sub ShowDiscount4 ()
  Dim Quantitat As Long
  Redueix el descompte com a doble
  Quantitat = InputBox("Introdueix la quantitat: ")
  Seleccioneu Quantitat de caixa
    Cas 0 a 24: descompte = 0,1
    Cas del 25 al 49: descompte = 0,15
    Cas 50 a 74: descompte = 0,2
    El cas és >= 75: descompte = 0,25
  Finalitzar la selecció
  MsgBox "Descompte: " & Descompte
End Sub

Quan VBA executa una estructura Select Case, l'estructura es surt tan bon punt VBA troba un cas veritable i executa les declaracions per a aquest cas.

Un exemple de Selecció de cas imbricat

Tal com es demostra a l'exemple següent, podeu niar estructures Select Case. Aquesta rutina examina la cel·la activa i mostra un missatge que descriu el contingut de la cel·la. Tingueu en compte que el procediment té tres estructures Select Case i cadascuna té la seva pròpia instrucció End Select:

Sub CheckCell ()
  Atenuar el missatge com a cadena
  Seleccioneu el cas és buit (ActiveCell)
    Cas Veritable
     Msg = "està en blanc".
    Cas Altre
     Seleccioneu Case ActiveCell.HasFormula
       Cas Veritable
        Msg = "té una fórmula"
       Cas Altre
        Seleccioneu Case IsNumeric (ActiveCell)
          Cas Veritable
           Msg = "té un número"
          Cas Altre
           Msg = "té text"
        Finalitzar la selecció
    Finalitzar la selecció
  Finalitzar la selecció
  MsgBox "Cell " & ActiveCell.Address & " " & Msg
End Sub

La lògica és una cosa així:

Esbrineu si la cel·la està buida.

Si no està buit, comproveu si conté una fórmula.

Si no hi ha fórmula, esbrineu si conté un valor numèric o text.

Quan la rutina acaba, la variable Msg conté una cadena que descriu el contingut de la cel·la. La funció MsgBox mostra aquest missatge.

Com utilitzar l'estructura de cas de selecció a Excel 2016 VBA

Un missatge que mostra el procediment CheckCell.

Podeu niuar les estructures de Select Case tan profundament com necessiteu, però assegureu-vos que cada instrucció Select Case tingui una instrucció End Select corresponent.

Si encara no esteu convençuts que val la pena l'esforç de sagnar el codi, la llista anterior serveix com a bon exemple. Els sagnis realment per deixar clars els nivells de nidificació. Mireu el mateix procediment sense cap sagnat:

Sub CheckCell ()
Atenuar el missatge com a cadena
Seleccioneu el cas és buit (ActiveCell)
Cas Veritable
Msg = "està en blanc".
Cas Altre
Seleccioneu Case ActiveCell.HasFormula
Cas Veritable
Msg = "té una fórmula"
Cas Altre
Seleccioneu Case IsNumeric (ActiveCell)
Cas Veritable
Msg = "té un número"
Cas Altre
Msg = "té text"
Finalitzar la selecció
Finalitzar la selecció
Finalitzar la selecció
MsgBox "Cell " & ActiveCell.Address & " " & Msg
End Sub

Bastant incomprensible, eh?


Com bloquejar Microsoft Word dobrir fitxers en mode només de lectura a Windows

Com bloquejar Microsoft Word dobrir fitxers en mode només de lectura a Windows

Com bloquejar Microsoft Word d'obrir fitxers en mode de només lectura a Windows Microsoft Word obre fitxers en mode de només lectura, cosa que fa que sigui impossible editar-los? No us preocupeu, els mètodes es mostren a continuació

Com solucionar la impressió incorrecta de documents de Microsoft Word

Com solucionar la impressió incorrecta de documents de Microsoft Word

Com corregir errors en imprimir documents incorrectes de Microsoft Word Els errors en imprimir documents de Word amb tipus de lletra canviats, paràgrafs desordenats, falta de text o contingut perdut són força habituals. No obstant això, no

Esborra els dibuixos de llapis i ressaltats a les teves diapositives de PowerPoint

Esborra els dibuixos de llapis i ressaltats a les teves diapositives de PowerPoint

Si heu utilitzat el llapis o el marcador per dibuixar a les vostres diapositives de PowerPoint durant una presentació, podeu desar els dibuixos per a la següent presentació o esborrar-los de manera que la propera vegada que el mostreu, començareu amb diapositives de PowerPoint netes. Seguiu aquestes instruccions per esborrar dibuixos a llapis i ressaltadors: Esborrant línies una a […]

Contingut de la biblioteca destils a SharePoint 2010

Contingut de la biblioteca destils a SharePoint 2010

La biblioteca d'estils conté fitxers CSS, fitxers de llenguatge de full d'estil extensible (XSL) i imatges utilitzades per pàgines mestres predefinides, dissenys de pàgina i controls a SharePoint 2010. Per localitzar fitxers CSS a la biblioteca d'estils d'un lloc de publicació: Trieu Accions del lloc→Visualitza Tot el contingut del lloc. Apareix el contingut del lloc. La biblioteca d'estil es troba a […]

Formateu els números en milers i milions als informes dExcel

Formateu els números en milers i milions als informes dExcel

No desbordeu el vostre públic amb números gigantesques. A Microsoft Excel, podeu millorar la llegibilitat dels vostres taulers i informes formatant els vostres números perquè apareguin en milers o milions.

Com compartir i seguir els llocs de SharePoint

Com compartir i seguir els llocs de SharePoint

Apreneu a utilitzar les eines de xarxes socials de SharePoints que permeten a persones i grups comunicar-se, col·laborar, compartir i connectar-se.

Com convertir les dates a formats Julian a Excel

Com convertir les dates a formats Julian a Excel

Les dates julianes s'utilitzen sovint en entorns de fabricació com a marca de temps i referència ràpida per a un número de lot. Aquest tipus de codificació de dates permet als minoristes, consumidors i agents de serveis identificar quan es va fabricar un producte i, per tant, l'antiguitat del producte. Les dates julianes també s'utilitzen en programació, militars i astronomia. Diferents […]

Com crear una aplicació web daccés

Com crear una aplicació web daccés

Podeu crear una aplicació web a Access 2016. Què és, de totes maneres, una aplicació web? Bé, web vol dir que està en línia i l'aplicació és només una abreviatura de "aplicació". Una aplicació web personalitzada és una aplicació de base de dades en línia a la qual s'accedeix des del núvol mitjançant un navegador. Creeu i manteniu l'aplicació web a la versió d'escriptori […]

Barra dinici ràpid a SharePoint 2010

Barra dinici ràpid a SharePoint 2010

La majoria de les pàgines del SharePoint 2010 mostren una llista d'enllaços de navegació a la barra d'inici ràpid al costat esquerre de la pàgina. La barra d'inici ràpid mostra enllaços al contingut del lloc destacat, com ara llistes, biblioteques, llocs i pàgines de publicació. La barra d'inici ràpid inclou dos enllaços molt importants: Enllaç de tot el contingut del lloc: el […]

Què signifiquen els missatges derror del solucionador a Excel?

Què signifiquen els missatges derror del solucionador a Excel?

Per a problemes senzills, Solver a Excel sol trobar ràpidament els valors òptims de la variable Solver per a la funció objectiu. Però, en alguns casos, Solver té problemes per trobar els valors de la variable Solver que optimitzen la funció objectiu. En aquests casos, Solver normalment mostra un missatge o un missatge d'error que descriu o discuteix el problema que […]