Treballant amb funcions VBA que retornen una matriu a Excel 2016

Les fórmules de matriu són una de les funcions més potents d'Excel. Si esteu familiaritzat amb les fórmules de matriu, us agradarà saber que podeu crear funcions VBA que retornin una matriu.

Torna una sèrie de noms de mesos

Comencem amb un exemple senzill. La funció MonthNames retorna una matriu de 12 elements de, ho heu endevinat, noms de mesos.

Funció MonthNames()
  MonthNames = Matriu ("gener", "febrer", "març", _
   “Abril”, “Maig”, “Juny”, “Juliol”, “Agost”, _
   "Setembre", "Octubre", "Novembre", "Desembre")
Funció final

Per utilitzar la funció MonthNames en un full de treball, l'heu d'introduir com a fórmula de matriu de 12 cel·les. Per exemple, seleccioneu l'interval A2:L2 i introduïu =MonthNames() . A continuació, premeu Ctrl+Maj+Enter per introduir la fórmula de matriu a les 12 cel·les seleccionades. Consulteu el resultat.

Treballant amb funcions VBA que retornen una matriu a Excel 2016

Utilitzant la funció MonthNames per retornar una matriu de 12 elements.

Si voleu que els noms dels mesos es mostrin en una columna, seleccioneu 12 cel·les en una columna i utilitzeu aquesta fórmula de matriu. (No us oblideu d'introduir-lo prement Ctrl+Maj+Enter.)

=TRANSPOSE(Noms del mes())

També podeu escollir un sol mes de la matriu. Aquí hi ha una fórmula (no una fórmula de matriu) que mostra el quart element de la matriu: abril.

=INDEX(Noms del mes(),4)

Torna una llista ordenada

Suposem que teniu una llista de noms que voleu mostrar ordenats en un altre rang de cel·les. No seria bo que una funció de full de treball ho fes per tu?

Aquesta funció personalitzada fa exactament això: pren un rang de cel·les d'una sola columna com a argument i després retorna una matriu d'aquestes cel·les ordenades. El rang A2:A13 conté alguns noms. L'interval C2:C13 conté aquesta fórmula de matriu multicel·la. (Recordeu que heu d'introduir la fórmula prement Ctrl+Maj+Enter.)

Treballant amb funcions VBA que retornen una matriu a Excel 2016

Ús d'una funció personalitzada per retornar un rang ordenat.

=Ordenat (A2:A13)

Aquí teniu el codi de la funció Sorted:

Funció ordenada (Rng com a rang)
  Dim SortedData() com a variant
  Dim Cell As Range
  Dim Temp As Variant, i As Long, j As Long
  Dim NonEmpty As Long
' Transfereix dades a SortedData
  Per a cada cèl·lula en Rng
    Si no és buida (cel·la), aleshores
      No buit = No buit + 1
      ReDim Conserva les dades ordenades (1 a no buit)
      SortedData(NonEmpty) = Cell.Value
    Acaba si
  Cel·la següent
' Ordena la matriu
  Per i = 1 a No buit
    Per a j = i + 1 a No buit
      Si SortedData(i) > SortedData(j), aleshores
        Temp = Dades ordenades (j)
        SortedData(j) = SortedData(i)
        SortedData(i) = Temp
      Acaba si
    Següent j
  A continuació i
' Transposa la matriu i torna-la
  Ordenat = Application.Transpose(SortedData)
Funció final

La funció Sorted comença creant una matriu anomenada SortedData. Aquesta matriu conté tots els valors no en blanc de l'interval d'arguments. A continuació, s'ordena la matriu SortedData mitjançant un algorisme d'ordenació de bombolles. Com que la matriu és una matriu horitzontal, s'ha de transposar abans de ser retornada per la funció.

La funció Ordenada funciona amb un interval de qualsevol mida, sempre que estigui en una sola columna o fila. Si les dades no ordenades es troben en una fila, la fórmula ha d'utilitzar la funció TRANSPOSE d'Excel per mostrar les dades ordenades horitzontalment. Per exemple:

=TRANSPOSE(Ordenat(A16:L16))

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 […]