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 :

Découper une cellule


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Juin 2008
    Messages
    17
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2008
    Messages : 17
    Par défaut Découper une cellule
    Bonjour,

    Sous excel 2010,

    J'ai une cellule avec 60 nombres espacés par une tabulation.

    Je souhaite la de couper en 60 cellules contenant un nombre a chaque fois.

    J'ai trouvé le code que je n'arrive pas a adapter (même ce code ne fonctionne pas) :

    Extraire les données séparées par un espace dans une chaine de caractères
    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
    Sub extractionMots()
    Dim Tableau() As String
    Dim i As Integer
    'découpe la chaine en fonction des espaces " "
     
    'le résultat de la fonction Split est stocké dans un tableau
     
    Tableau = Split("Bienvenue sur le site Developpez.com", " ")
     
     
    'boucle sur le tableau pour visualiser le résultat
    For i = 0 To UBound(Tableau)
    'Le résultat s'affiche dans la fenêtre d'execution de l'éditeur de macros
    Debug.Print Tableau(i)
    Next i
    End Sub
    D'avance merci pour m'aiguiller

    Hidozo

  2. #2
    Membre éclairé Avatar de verredewhisky
    Homme Profil pro
    Développeur en systèmes embarqués
    Inscrit en
    Janvier 2013
    Messages
    63
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Suisse

    Informations professionnelles :
    Activité : Développeur en systèmes embarqués

    Informations forums :
    Inscription : Janvier 2013
    Messages : 63
    Par défaut
    Tiens voilà le code pour des chiffres et j'ai fait une opération avec z pour vérifier qu'il s'agisse bien de chiffres.

    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
    24
     
    Sub test()
     
    Dim Tableau() As String
    Dim i As Integer
    Dim x As Double
    Dim z As Double
    'découpe la chaine en fonction des espaces " "
     
    'le résultat de la fonction Split est stocké dans un tableau
     
    Tableau = Split("10 12 15 14 25 26 36 58", " ")
    z = 0
     
    'boucle sur le tableau pour visualiser le résultat
    For i = 0 To UBound(Tableau)
    'Le résultat s'affiche dans la fenêtre d'execution de l'éditeur de macros
    Debug.Print CDbl(Tableau(i))
    x = CDbl(Tableau(i))
    z = z + x
    Debug.Print z
    Next i
     
    End Sub

  3. #3
    Membre averti
    Profil pro
    Inscrit en
    Juin 2008
    Messages
    17
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2008
    Messages : 17
    Par défaut résolu
    re bonjour,

    merci pour la réponse verredewhisky

    j'ai essayé celle là et elle fonctionne bien.

    Je vais faire un comparatif des 2 pour prendre la pus rapide, car en fait je vais avoir l'équivalanet de 30 cellules par seconde sur parfois 2 heures... cela fait quelques lignes

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    Sub CommandButton1_Click()
    Dim strTableauMot()  As String
    Cells(3, 1).Activate
    With ActiveCell
            strTableauMot() = Split(.Value, " ")
            Range(Cells(.Row, .Column + 1), Cells(.Row, UBound(strTableauMot) + .Column + 1)) = strTableauMot
    End With
    End Sub
    Encore merci

    hidozo

  4. #4
    Invité
    Invité(e)
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    Sub CommandButton1_Click()
    Dim strTableauMot()  As String
    Cells(3, 1).Activate
     
    With ActiveCell
            strTableauMot() = Split(.Value, Chr(9))
            Range(Cells(.Row, .Column + 1), Cells(.Row, UBound(strTableauMot) + .Column + 1)) = strTableauMot
    End With
    End Sub

Discussions similaires

  1. [XL-2003] Découper une cellule en plusieurs
    Par nicolasfo dans le forum Excel
    Réponses: 5
    Dernier message: 23/06/2011, 15h48
  2. Découper une chaîne de caractère a l’intérieur d’une cellule
    Par cl9191 dans le forum Macros et VBA Excel
    Réponses: 9
    Dernier message: 30/07/2009, 18h20
  3. Récupérer, calculer et découper une cellule
    Par lolipop65 dans le forum Macros et VBA Excel
    Réponses: 8
    Dernier message: 22/08/2008, 14h39
  4. Découper une cellule
    Par Shaia79 dans le forum Macros et VBA Excel
    Réponses: 12
    Dernier message: 22/04/2008, 07h50
  5. [VBA-E] Fonction sum() dans une cellule
    Par Gonzo dans le forum Macros et VBA Excel
    Réponses: 5
    Dernier message: 16/12/2002, 11h18

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