La fonction VBA Split convertit une chaîne de caractères en une variable tableau à partir d’un séparateur. Cette fonction réalise la même tâche que le menu EXCEL Données / Convertir / Format délimité.
Syntaxe :
VariableTableau = Split(Chaîne, Séparateur)
Exemple :
Const AdresseChoix = "B16;B18;B20;B22;B24;B26;B28;B30;B32;B34;B38;B42;B44;B46;B48" Dim TableAdresseChoix() As String Sub LectureTable() TableAdresseChoix = Split(AdresseChoix, ";") End Sub
Dans cet exemple, la variable AdresseChoix contient une chaîne de caractères constituées d’adresses de cellules d’un tableau Excel, chacune séparée par un point virgule (séparateur). Le séparateur peut être n’importe quel autre caractère.
Une fois la fonction Split appliquée à la variable AdresseChoix avec le séparateur point virgule, la variable tableau TableAdresseChoix contient les adresses de cellules individuelles de TableAdresseChoix(0) à TableAdresseChoix(14), soit quinze occurrences.
Le couple de commandes DATA (stockage des données séparées par des virgules) et READ (lecture des données) associé à une boucle compteur FOR… TO… NEXT, communément présentes dans la plupart des langages BASIC des ordinateurs des années 80, effectuait un traitement similaire.
Exemple d’utilisation de la variable tableau :
Dim i As Long For i = 0 To UBound(TableAdresseChoix) .Range(TableAdresseChoix(i)).Value = i * 10 Next i
Dans cet exemple, la boucle compteur For… To… Next attribue successivement les valeurs de 0 à 14 (soit le nombre d’occurrences contenues dans la variable tableau TableAdresseChoix : UBound(TableAdresseChoix)) et le résultat du calcul i * 10 (soit 0 puis 10 puis 20…) est stocké dans les cellules (.Range) du tableau Excel identifiées dans la variable tableau TableAdresseChoix (soit B16, B18, B20…).
Pour plus d’informations sur l’utilisation des variables tableaux, consulter l’article Manipuler des plages de cellules dans des variables tableaux.
La fonction Join réalise l’inverse de Split en concaténant le contenu d’une variable tableau dans une variable.
Tous savoir sur la conversion de fichier (Texte <-> Excel) / l’analyse de données
Approfondir le sujet : Programmer en VBA / Découvrir la série d’articles Maîtriser Excel
Derniers articles parBenoît RIVIERE (voir tous)
- Les données de la facturation électronique - mercredi 9 octobre 2024
- VBA/SQL vs Power Query : deux solutions complémentaires - mercredi 2 octobre 2024
- L’IA dans les cabinets comptables : cas concrets - jeudi 26 septembre 2024
- EXCEL : insérer une image ou un logo dans une cellule - lundi 16 septembre 2024
- Lancer l’exécution d’un script Python à partir d’une macro VBA - lundi 9 septembre 2024