Cordes dans Excel Séparez VBA
Ci-dessous, nous examinerons un programme dans Excel VBA qui sépare les chaînes.
Situation:
Placez un bouton de commande sur votre feuille de calcul et ajoutez les lignes de code suivant:
-
Tout d’abord, nous déclarons une variable appelée fullname de type String, une variable appelée commaposition de type entier, et une variable appelée i de type entier.
Dim fullname As String, commaposition As Integer, i As Integer
Le problème que nous traitons est que nous devons dire Excel VBA où nous voulons séparer la chaîne. En cas de Smith, Mike la virgule est à la position 6, tandis que dans le cas de Williams, Janet la virgule est à la position 9.
-
Nous utilisons une boucle pour exécuter les opérations sur chaque nom entré dans Excel. Tout d’abord, nous initialiser la fullname variable. Ensuite, nous utilisons la fonction InStr pour trouver la position de la virgule.
For i = 2 To 7 fullname = Cells(i, 1).Value commaposition = InStr(fullname, ",")
-
Enfin, nous voulons écrire la partie après la virgule à la colonne B et la partie en face de la virgule à la colonne C. Vous pouvez y parvenir en ajoutant les lignes:
Cells(i, 2).Value = Mid(fullname, commaposition + 2) Cells(i, 3).Value = Left(fullname, commaposition - 1)
Mid (fullname, commaposition + 2) signifie que nous voulons que la partie de fullname à partir de caractère « commaposition + 2 » (ce qui est exactement le prénom).
Gauche (fullname, commaposition – 1) signifie que nous voulons que la partie de fullname à partir du début jusqu’à caractère « commaposition- 1 » (ce qui est exactement le nom de famille).
-
Ne pas oublier de fermer la boucle.
Next i
-
Ajouter six noms séparés par une virgule et l’espace pour Range ( « A2: A7 »).
-
Tester le programme.
Résultat: