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 :

[VBA_E] Séparation Colonne


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Inactif Avatar de franck.automaticien
    Inscrit en
    Février 2004
    Messages
    238
    Détails du profil
    Informations personnelles :
    Âge : 45

    Informations forums :
    Inscription : Février 2004
    Messages : 238
    Par défaut [VBA_E] Séparation Colonne
    Bonjour

    je voudrais Séparer en colonne un texte qui est dans une même cellule

    cellule A1 :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    Sb20 AT %I2.0 : EBOOL (*Mise en service (pupitre principal)*);
    Je souhaiterais avoir le resultat suivant

    A_______________B_____________C
    sb20__________%I2.0__________BOOL


    Merci d'avance
    Cordialement
    Franck

  2. #2
    Membre Expert Avatar de wilfried_42
    Homme Profil pro
    Auto-entrepreneur
    Inscrit en
    Novembre 2006
    Messages
    1 427
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 63
    Localisation : France, Vendée (Pays de la Loire)

    Informations professionnelles :
    Activité : Auto-entrepreneur
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Novembre 2006
    Messages : 1 427
    Par défaut
    Bonjour Franck

    Tes lignes ont'elles la meme structure à chaque fois ?

    @ te lire

  3. #3
    Inactif Avatar de franck.automaticien
    Inscrit en
    Février 2004
    Messages
    238
    Détails du profil
    Informations personnelles :
    Âge : 45

    Informations forums :
    Inscription : Février 2004
    Messages : 238
    Par défaut
    Cela peut etre de cette façon la:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    AT %I2.13 : EBOOL (*Libre*);
    cela deonnerai sa

    A_______________B_____________C______________D
    [VIDE]__________%I2.13__________BOOL________Libre

    oups pardon j'avais oublier ceux ci:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Sb20 AT %I2.0 : EBOOL (*Mise en service (pupitre principal)*);
    A_______________B_____________C_________________D
    sb20__________%I2.0__________BOOL____________Mise en service (pupitre principal)

    Merci

  4. #4
    Membre Expert Avatar de wilfried_42
    Homme Profil pro
    Auto-entrepreneur
    Inscrit en
    Novembre 2006
    Messages
    1 427
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 63
    Localisation : France, Vendée (Pays de la Loire)

    Informations professionnelles :
    Activité : Auto-entrepreneur
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Novembre 2006
    Messages : 1 427
    Par défaut
    re:

    voici un fichier en formule

    si tu veux en Vba fais un signe

    @ te lire

  5. #5
    Inactif Avatar de franck.automaticien
    Inscrit en
    Février 2004
    Messages
    238
    Détails du profil
    Informations personnelles :
    Âge : 45

    Informations forums :
    Inscription : Février 2004
    Messages : 238
    Par défaut
    en faite en ce moment je modifie une macro en vba!

    Donc je veux bien vba

    Merci de ton aide
    ++

  6. #6
    Inactif  
    Avatar de ouskel'n'or
    Profil pro
    Inscrit en
    Février 2005
    Messages
    12 464
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2005
    Messages : 12 464
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    NoLigne = 1
    LeTableau = Split(Range("A" & NoLigne).value, " ")
    For i = 0 to Ubound(LeTableau)
         Cells(NoLigne, i+1).value = LeTableau(i)
    Next
    Tu dis
    A+

  7. #7
    Inactif Avatar de franck.automaticien
    Inscrit en
    Février 2004
    Messages
    238
    Détails du profil
    Informations personnelles :
    Âge : 45

    Informations forums :
    Inscription : Février 2004
    Messages : 238
    Par défaut
    Citation Envoyé par wilfried_42
    re:

    voici un fichier en formule

    si tu veux en Vba fais un signe

    @ te lire
    Tu as regardé a en VBA?
    sa serait super sympa merci....
    Cordialement

  8. #8
    Membre Expert Avatar de wilfried_42
    Homme Profil pro
    Auto-entrepreneur
    Inscrit en
    Novembre 2006
    Messages
    1 427
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 63
    Localisation : France, Vendée (Pays de la Loire)

    Informations professionnelles :
    Activité : Auto-entrepreneur
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Novembre 2006
    Messages : 1 427
    Par défaut
    re:

    desolé je pensais que ouskel'nor avait donné la reponse

    Nous allons conidérer les 3 occurences en colonne A, B, C.
    la variable chaine contient la chaine de caractere à traiter


    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    if instr(chaine,"AT")<2 then 
             range("A1") = "" ' Il n'y a pas de 1ère occurence)
    else
             range("A1") = trim(left(chaine,instr(chaine,"AT")-1))
    end if
    2eme occurence
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    range("B1") = trim(mid(chaine,instr(chaine,"%"),(instr(chaine,":")-1)-instr(chaine,"%")))
    3eme occurence

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    range("C1") = trim(mid(chaine,instr(chaine,":")+3,(instr(chaine,"(")-1)-(instr(chaine,":")+3)))
    Bonne journée
    @ +

  9. #9
    Inactif  
    Avatar de ouskel'n'or
    Profil pro
    Inscrit en
    Février 2005
    Messages
    12 464
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2005
    Messages : 12 464
    Par défaut
    Citation Envoyé par ouskel'n'or
    Voui, j'avais oublié le pb de ta phrase mais il peut se régler si... tes phrases commencent toujours par "(*"
    Est-ce le cas ?
    A+
    Citation Envoyé par franck.automaticien
    oui c'est le cas... hiii
    Youpi, alors si je reprends ta ligne, tu peux utiliser
    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
    Sub separerLesMots()
    Dim LeTableau As Variant, LaChaîne As String
    Dim NoLigne As Long, NoCol As Byte
        NoLigne = 1
        If InStr(Range("A" & NoLigne).Value, "(*") <> 0 then _
            LaChaîne = Right(Range("A" & NoLigne).Value, Len(Range("A" & NoLigne).Value) _
                     - InStr(Range("A" & NoLigne).Value, "(*") + 1)
        LeTableau = Split(Left(Range("A" & NoLigne).Value, _
                    InStr(Range("A" & NoLigne).Value, "(*") - 2), " ")
        ReDim Preserve LeTableau(UBound(LeTableau) + 1)
        LeTableau(UBound(LeTableau)) = LaChaîne
        For NoCol = 0 To UBound(LeTableau)
             Cells(NoLigne + 1, NoCol + 1).Value = LeTableau(NoCol)
        Next
    End Sub
    Tu dis
    A+

Discussions similaires

  1. SQL séparation 1 colonne en plusieurs colonnes
    Par flo123456 dans le forum Langage SQL
    Réponses: 4
    Dernier message: 09/04/2008, 14h32
  2. Réponses: 8
    Dernier message: 17/03/2008, 20h44
  3. faire des colonnes de séparation dans un datagrid
    Par hokidoki dans le forum ASP.NET
    Réponses: 7
    Dernier message: 22/06/2007, 11h15
  4. VBA_E : Selection des 5 plus grandes valeurs d'une colonne..
    Par VBBBA dans le forum Macros et VBA Excel
    Réponses: 6
    Dernier message: 15/09/2006, 17h39
  5. [VBA_E]Problème Balayage plage de colonnes
    Par baptbapt dans le forum Macros et VBA Excel
    Réponses: 12
    Dernier message: 29/08/2006, 16h14

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