Com dividir una cadena en una matriu a VBA (3 maneres)

  • Comparteix Això
Hugh West

En aquest article, us mostraré com podeu dividir una cadena en una matriu a VBA . Dividir és una de les funcions més importants i àmpliament utilitzades que fem servir a VBA . Aprendràs a dividir una cadena a VBA de totes les maneres possibles.

Funció dividida de VBA (vista ràpida)

=Split(Expression As String, [Delimiter], [Limit As Long=1], [CompareAsVbCompareMethod=vbBinaryCompare])

Baixa el llibre de pràctiques

Dividir una cadena en una matriu.xlsm

3 maneres de dividir una cadena en una matriu en VBA

Tindrem una cadena a la mà "Vam sol·licitar la visa dels Estats Units, el Canadà, Austràlia i França .” .

Us mostraré com podeu dividir aquesta cadena en una matriu de totes les maneres possibles mitjançant la funció Dividir de VBA .

1. Utilitzeu qualsevol delimitador per dividir una cadena en una matriu a VBA

Podeu utilitzar qualsevol cadena com a delimitador per dividir una cadena en una matriu a VBA .

Pot ser un espai (" ") , una coma (",") , un punt i coma (":") , un sol caràcter, un cadena de caràcters o qualsevol cosa.

Exemple 1:

Dividim la cadena utilitzant la coma com a delimitador.

La línia de codi serà:

Arr = Split(Text, ",")

El Codi VBA complet serà:

Codi VBA:

2399

Sortida:

Dividirà la cadena en una matriu formada per {"Vam sol·licitar la visa dels EUA", "Canadà", "Austràlia", "França”}.

Exemple 2:

També podeu fer servir un espai (“ ”) com a delimitador.

La línia de codi serà:

Arr = Split(Text, " ")

El Codi VBA complet serà:

Codi VBA:

8899

Sortida:

Dividirà la cadena en una matriu formada per {“Nosaltres”, “aplicat”, “per a”, “el”, “visat”, “de”, “EUA”, “Canadà”, “Austràlia”, “França”}.

Coses que cal recordar:

  • El delimitador predeterminat és un espai (“ ”) .
  • És a dir, si no inseriu cap delimitador, utilitzarà un espai com a delimitador.

Llegir més: Dividir la cadena per caràcters a Excel (6 maneres adequades)

Lectures similars:

  • Dividir el text en múltiples cel·les a Excel
  • VBA per obtenir valors únics de la columna a la matriu a Excel (3 criteris)
  • Excel VBA: com filtrar amb múltiples Criteris en matriu (7 vies)

2. Dividiu una cadena en una matriu amb qualsevol nombre d'elements

Podeu dividir una cadena en una matriu amb qualsevol nombre d'elements segons el vostre desig.

Inseriu el nombre d'elements com a l'argument 3r de la funció Dividir .

Exemple:

Dividim la cadena als primers 3 elements amb un espai com a delimitador.

La línia de codi seràser:

Arr = Split(Text, " ", 3)

I el codi VBA serà:

Codi VBA:

2279

Sortida:

Dividirà la cadena en un matriu formada pels primers 3 elements separats pel delimitador espai .

Coses a recordar:

  • L'argument predeterminat és -1 .
  • Això vol dir que si no introduïu l'argument, es dividirà la cadena en el nombre màxim de vegades possible.

Llegir més: Com dividir la cadena per longitud a Excel (8 maneres)

3. Utilitzeu tant el delimitador que distingeix entre majúscules i minúscules per dividir una cadena d'una matriu en VBA

La funció Dividir us ofereix la possibilitat d'utilitzar tant un que distingeix entre majúscules i minúscules Delimitador no distingeix entre majúscules i minúscules .

Per a un delimitador insensible en majúscules i minúscules , inseriu el 4t argument com a 1.

I per a un delimitador insensible a majúscules i minúscules , inseriu l'argument 4th com a 0 .

Exemple 1: delimitador que no distingeix entre majúscules i minúscules

A la cadena donada, considerem el text “PER” com a delimitador i 2 com a el nombre total d'elements de la matriu.

Ara, per a un cas no distingeix entre majúscules i minúscules , la línia de codi serà:

Arr = Split(Text, "FOR ", 3,1)

I el codi VBA complet serà:

Codi VBA:

5303

Sortida:

Com que el delimitador és insensible a majúscules aquí, el “PER ” funcionarà com a “per a” i dividirà la cadena en una matriu de dos elements.

Exemple 2: Delimitador que distingeix entre majúscules i minúscules

Una vegada més, per a un cas distingeix entre majúscules i minúscules , la línia de codi serà:

Arr = Split(Text, "FOR ", 3,0)

I el codi VBA complet serà:

Codi VBA:

8156

Sortida:

Com que el delimitador és diferent entre majúscules aquí, el “ FOR” no serà “for” i no dividirà la cadena en una matriu de dos elements.

Llegir més: Excel VBA: eliminar els duplicats d'una matriu (2 exemples)

Coses a recordar:

  • El valor per defecte de l'argument és 0 .
  • És a dir, si no poseu el valor de l'argument 4th , funcionarà per a una concordança diferent entre majúscules i minúscules .

Conclusió

Per tant, utilitzant aquests mètodes, podeu utilitzar el Funció de dividir de VBA per dividir una cadena en una matriu d'elements. Té vostè alguna pregunta? No dubteu a preguntar-nos.

Hugh West és un entrenador i analista d'Excel molt experimentat amb més de 10 anys d'experiència en el sector. És llicenciat en Comptabilitat i Finances i Màster en Administració i Direcció d'Empreses. Hugh té una passió per l'ensenyament i ha desenvolupat un enfocament pedagògic únic que és fàcil de seguir i entendre. El seu coneixement expert d'Excel ha ajudat a milers d'estudiants i professionals de tot el món a millorar les seves habilitats i a destacar en les seves carreres. A través del seu bloc, Hugh comparteix els seus coneixements amb el món, oferint tutorials d'Excel gratuïts i formació en línia per ajudar les persones i les empreses a assolir tot el seu potencial.