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 :

Copie tableau vers Excel


Sujet :

Macros et VBA Excel

  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Décembre 2004
    Messages
    67
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2004
    Messages : 67
    Par défaut Copie tableau vers Excel
    Bjr

    j'ai un petit souci

    j'ai un tableau a une dimension que je cherche a copier vers excel

    Tab(0)= jaune
    Tab(1)= vert
    Tab(2)= rouge
    ....
    et voila ce que je voudrais obtenir
    A1 jaune
    B1 vert
    C1 rouge

    j'ai fait un truc qui fonctionne mais qui est long ( Une boucle et j'utilise offset pour remplir chaque cellule )

    existe-t-il une facon plus rapide ?

    Par avance, merci

  2. #2
    Invité
    Invité(e)
    Par défaut
    Bonjour et bienvenue sur le forum Office de DVP.

    Peux-tu nous mettre le code du truc qui fonctionne et qui est long, il y a peut-être moyen de l'optimiser.

    Philippe

  3. #3
    Membre confirmé
    Profil pro
    Inscrit en
    Décembre 2004
    Messages
    67
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2004
    Messages : 67
    Par défaut
    C'est pas que ce soit long ( j'ai ptet un peu exagéré)
    mais je cherche à optimiser cette partie de traitement

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    For j = LBound(tabres) To UBound(tabres) Step 1
        ActiveCell.Value = tabres(j)
        ActiveCell.Offset(0, 1).Activate
    Next j

  4. #4
    Expert confirmé
    Avatar de Didier Gonard
    Homme Profil pro
    Formateur Office et développeur VBA en freelance
    Inscrit en
    Février 2008
    Messages
    2 805
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Formateur Office et développeur VBA en freelance

    Informations forums :
    Inscription : Février 2008
    Messages : 2 805
    Par défaut
    Bonjour,

    Dans ce cas précis, en 1 ligne :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Range("A1:C1") = tabres
    pour 3 données, si ton tableau en a plus, il n'y aura que 3 cellules remplies, tu peux dimentionner ta plage dynamiquement en fonction de Ubound, si ta plage est plus grande, tu auras des #N/A.

    cordialement,

    Didier

  5. #5
    Membre confirmé
    Profil pro
    Inscrit en
    Décembre 2004
    Messages
    67
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2004
    Messages : 67
    Par défaut
    merci de votre aide
    mais dans votre exemple c'est assez statique

    dans mon probleme ; le tableau est dynamique
    et surtout la celllule de depart (" A1" dans votre exemple ) est également dynamique.

    Sans trop rentrer dans les détails , ma macro cherche un n° de telephone dans une feuille et lorsque le n° est trouvé, elle colle les elements du tableau ( nom, rue, cp, ville, etc) dans les cellules adjacentes

  6. #6
    Expert confirmé
    Avatar de Didier Gonard
    Homme Profil pro
    Formateur Office et développeur VBA en freelance
    Inscrit en
    Février 2008
    Messages
    2 805
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Formateur Office et développeur VBA en freelance

    Informations forums :
    Inscription : Février 2008
    Messages : 2 805
    Par défaut
    Ben oui, pourquoi les réponses sont à côté de la plaque

    Ben parcequ'elles répondent à la question posée et non pas à ce que le demandeur a dans l'idée...

    J'ai précisé que l'on pouvait mettre des bornes dynamiques, ça dépend du reste du code. Exemple, en faisant intervenir un tirage au sort

    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 DemoRempliCellRapide2()
    Dim tablo As Variant
    Dim I As Integer
    Dim MaxI As Byte
    Dim cible As Range
     
    'Selectionnez une cellule vierge qui a 29 cell vierges à droite par exemple
     
    MaxI = Int((30 * Rnd) + 1)
    ReDim tablo(MaxI)
    MsgBox MaxI
            For I = 0 To MaxI - 1 'demande un tableau à 1 dimention
                tablo(I) = Cells(I + 7, 3)
            Next I
    Range(ActiveCell, ActiveCell.Offset(0, MaxI)) = tablo
    End Sub
    la partie construction du tableau m'es propre, c'est pour l'exemple, il y a simplement 30 données.

    l'emplacement du "collage" dépendra de la cellule active (sélectionnée) et le Ubound variera de 1 à 30

    PS : si tu as besoin d'explications sur ce code ou sur la façon d'adapter le tien, tu demandes...
    PS2: Je n'utilise pas le même principe pour remplir mon tableau, ça marche aussi, mais me génère un tableau à 2 dimentions..

    bon courage,

    Didier

  7. #7
    Membre confirmé
    Profil pro
    Inscrit en
    Décembre 2004
    Messages
    67
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2004
    Messages : 67
    Par défaut
    un grand merci
    ca marche

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

Discussions similaires

  1. Export tableau vers Excel
    Par stanilas dans le forum Struts 2
    Réponses: 4
    Dernier message: 19/08/2011, 11h42
  2. Copie tableau de Excel vers Word
    Par palgaz dans le forum Macros et VBA Excel
    Réponses: 0
    Dernier message: 15/07/2010, 13h15
  3. problème copie Tableau de Excel vers Word
    Par el_titou007 dans le forum VBA Word
    Réponses: 2
    Dernier message: 02/04/2007, 09h42
  4. Export d'un tableau vers Excel
    Par Tententai dans le forum Général JavaScript
    Réponses: 6
    Dernier message: 05/10/2006, 09h14
  5. [Excel] Exporter un tableau vers excel
    Par legillou dans le forum Documents
    Réponses: 8
    Dernier message: 08/02/2006, 14h37

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