IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Macros et VBA Excel Discussion :

Problème Split avec plusieurs colonnes et caractères spéciaux


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Avril 2007
    Messages
    116
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2007
    Messages : 116
    Par défaut Problème Split avec plusieurs colonnes et caractères spéciaux
    Bonjour,
    Dans une feuille lors de l'import de valeurs d'un fichier texte une colonne contient les valeurs noms et prénoms séparés par "_" et "/".
    Nom1_Prenom1/Nom2_Prenom2/Nom3_Prenom3 etc...

    Je souhaiterais récupérer les noms et prénoms dans deux colonnes distincte.

    J'ai créé ce code grâce au tuto de SilkyRoad https://silkyroad.developpez.com/VBA...nesCaracteres/
    Je sépare bien Nom_prénom mais je ne sais pas comment séparer le nom du prénom dans deux colonnes.
    Merci pour une piste.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    'Extraire les données séparées par un caractère spécial dans une chaine de caractères
    Sub extractionNomPrenom()
     
        Dim Tableau() As String
        Dim i As Integer
        Set sh = Sheets("Fiche") '
     Set f = Sheets("Data2") 'feuille source
    ValIdent = sh.Range("E9").Value 'définit la valeur à rechercher
    ligneEnreg = Sheets("Data2").[A:A].Find(ValIdent, LookIn:=xlValues).Row 'défini la ligne de référence lorsque le choix est effectué
        'découpe la chaine en fonction des  "/" nom_prénom
        'le résultat de la fonction Split est stocké dans un tableau
        Tableau = Split(f.Cells(ligneEnreg, 30), "/")
     
        'boucle sur le tableau pour afficher le résultat
        j = 11 'début ligne11
        For i = 0 To UBound(Tableau)
     
            'Le résultat s'affiche dans la feuille Fiche colonne DC
            sh.Range("dc" & j) = Tableau(i)
            j = j + 2 'saut de deux lignes
     
        Next i
    End Sub

  2. #2
    Rédacteur
    Avatar de Philippe Tulliez
    Homme Profil pro
    Formateur, développeur et consultant Excel, Access, Word et VBA
    Inscrit en
    Janvier 2010
    Messages
    13 184
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Activité : Formateur, développeur et consultant Excel, Access, Word et VBA

    Informations forums :
    Inscription : Janvier 2010
    Messages : 13 184
    Billets dans le blog
    53
    Par défaut
    Bonjour,
    Il suffit de refaire un Split
    Exemple
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    Sub t()
     Const txt As String = "Nom1_Prenom1/Nom2_Prenom2/Nom3_Prenom3"
     Dim Tableau_1() As String
     Dim Tableau_2() As String
     Dim Elem_1 As Long, Elem_2 As Long
     Tableau_1 = Split(txt, "/")
     
     For Elem_1 = 0 To UBound(Tableau_1)
       Tableau_2 = Split(Tableau_1(Elem_1), "_")
         MsgBox Tableau_2(0) & " - " & Tableau_2(1)
     Next
    End Sub
    Philippe Tulliez
    Ce que l'on conçoit bien s'énonce clairement, et les mots pour le dire arrivent aisément. (Nicolas Boileau)
    Lorsque vous avez la réponse à votre question, n'oubliez pas de cliquer sur et si celle-ci est pertinente pensez à voter
    Mes tutoriels : Utilisation de l'assistant « Insertion de fonction », Les filtres avancés ou élaborés dans Excel
    Mon dernier billet : Utilisation de la fonction Dir en VBA pour vérifier l'existence d'un fichier

  3. #3
    Membre confirmé
    Profil pro
    Inscrit en
    Avril 2007
    Messages
    116
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2007
    Messages : 116
    Par défaut
    Merci beaucoup Philippe
    c'est parfait, je ne savais pas que l'on pouvait imbriquer des tableaux
    bonne soirée

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. problème listbox avec plusieurs colonnes
    Par djams9 dans le forum VB.NET
    Réponses: 12
    Dernier message: 07/07/2011, 11h38
  2. Réponses: 4
    Dernier message: 27/11/2009, 17h19
  3. Probléme avec requétes contenant des caractéres spéciaux
    Par dragonfly dans le forum Requêtes
    Réponses: 1
    Dernier message: 08/11/2007, 18h20
  4. problème avec l'affichage des caractères spéciaux
    Par michelkey dans le forum Général Python
    Réponses: 4
    Dernier message: 19/08/2005, 09h09
  5. Réponses: 1
    Dernier message: 04/05/2005, 12h43

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo