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 un tableau en plusieurs [XL-2010]


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Homme Profil pro
    Technicien maintenance
    Inscrit en
    Décembre 2012
    Messages
    102
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Maroc

    Informations professionnelles :
    Activité : Technicien maintenance
    Secteur : High Tech - Électronique et micro-électronique

    Informations forums :
    Inscription : Décembre 2012
    Messages : 102
    Par défaut Découper un tableau en plusieurs
    Bonjour,

    et grand merci à vous et à ce forume qui me fournit de l'aide lorsque je me bloque devant les MACRO.

    Mon probléme consiste à découper mon tableau composé de "Cr" colonne en des petit tableau de 16 colonne chacun + la premiére colonne du grand tableau au début de chacun de mes petit tableau.

    et puis la derniére partie du tableau qui contient moin de 16 colonne avec la premiére colonne aussi .


    je suis vraiment bloqué la dessus . . et j'ai besoin de votre aide

    Merci infiniment ...

  2. #2
    Membre expérimenté
    Homme Profil pro
    Inscrit en
    Octobre 2012
    Messages
    199
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Octobre 2012
    Messages : 199
    Par défaut
    Bonjour,

    Faut il un petit tableau par feuille ou tous les petits tableaux sur la meme feuille.

    pouvez-vous mettre un fichier exemple ?

    Cordialement

  3. #3
    Membre confirmé
    Homme Profil pro
    Technicien maintenance
    Inscrit en
    Décembre 2012
    Messages
    102
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Maroc

    Informations professionnelles :
    Activité : Technicien maintenance
    Secteur : High Tech - Électronique et micro-électronique

    Informations forums :
    Inscription : Décembre 2012
    Messages : 102
    Par défaut
    Bonjour Chef ,

    Sur la méme feuil sera parfait.

    Tu trouveras ci-joint le tableau à découper .

    Merci Innnnnfiniiiment d'avance ..
    Fichiers attachés Fichiers attachés

  4. #4
    Membre chevronné Avatar de pyloupylou
    Homme Profil pro
    Conseil - Consultant en systèmes d'information
    Inscrit en
    Janvier 2012
    Messages
    438
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Conseil - Consultant en systèmes d'information
    Secteur : Conseil

    Informations forums :
    Inscription : Janvier 2012
    Messages : 438
    Par défaut
    A ta place, j'essaierai d'enregistrer en macro pour la création du premier découpage.
    Ensuite en regardant le code, tu mets en variable ce qui doit progresser
    et tu fais une boucle

    du style, je te le fais en littéral:

    1 / je copie mes colonnes qui doivent être conservées et les colles à l'emplacement du nouveau tableau avec
    ligne = 1

    -----début de boucle

    selection de "A" & ligne &"A" ligne + 23
    et coller en "A" & ligne +24 .

    ensuite tu regardes sur: ligne+5, le nombre de colonne que tu as ( nbcol = application.worksheetfunction.range(ligne+5;ligne+5)

    si > à une borne (x par exemple)
    selection du range(cells(ligne,x+1),cells(ligne+23,nbcol))
    tu coupes et tu colles en "B" & ligne+24
    sinon t'as fini sortie de boucle
    fin du si

    ensuite tu incrémentes ligne de 23
    retour boucle
    ------------------------------------------------------


  5. #5
    Membre confirmé
    Homme Profil pro
    Technicien maintenance
    Inscrit en
    Décembre 2012
    Messages
    102
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Maroc

    Informations professionnelles :
    Activité : Technicien maintenance
    Secteur : High Tech - Électronique et micro-électronique

    Informations forums :
    Inscription : Décembre 2012
    Messages : 102
    Par défaut
    C'est bien ce que j'ai essayé de faire mais çà n'as pas marché .. :/ ...

    merci de me proposer un code et non une proposition litérale ... N'oublie pas queje suis nulle en VBA ...


    merci infiniment chef ... !!

  6. #6
    Membre chevronné Avatar de pyloupylou
    Homme Profil pro
    Conseil - Consultant en systèmes d'information
    Inscrit en
    Janvier 2012
    Messages
    438
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Conseil - Consultant en systèmes d'information
    Secteur : Conseil

    Informations forums :
    Inscription : Janvier 2012
    Messages : 438
    Par défaut
    tu pousses un peu tout est dans la description
    si tu enregistres tes actions tu verras le code, et comme beaucoup c'est comme ça que j'ai appris le vba

    donc rapidement ça devrait être un truc dans ce genre

    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
     
    Sub test()
    Dim flag_sortie, ligne, nbcol
    Dim rupt_colonne                                         ' colonne de rupture
    rupt_colonne = 6                                         ' à ajuster
    flag_sortie = True                                       ' Initialise la variable de sortie.
    While flag_sortie                                        ' Teste la variable et si égal à faux sort
        Range(Cells(ligne, 1), Cells(ligne + 23, 1)).Copy    ' on copie la colonne de départ
        Range(cell(ligne + 24, 1)).PasteSpecial (xlPasteAll) ' on colle
        nbcol = Application.WorksheetFunction.CountA(Range(ligne + 6 & ":" & ligne + 6)) '6 ou 5 je ne me souvient plus de ton tableau de départ
        If nbcol > rupt_colonne Then
            Range(Cells(ligne, rupt_colonne + 1), Cells(ligne + 23, nbcol)).Cut
            Range(cell(ligne + 24, 2)).PasteSpecial (xlPasteAll)
            ligne = ligne + 23
        Else
            flag_sortie = False
        End If
    Wend    ' Met fin à la boucle .
    End Sub
    désolé, j'ai pas testé, mais ça tu peux peut être le faire en debug et adapter en fonction du résultat..., le débug c'est la touche F8


    ----
    Il ne s'agit pas de chercher à tout savoir mais de savoir où tout chercher
    merci de penser à

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

Discussions similaires

  1. Empecher l'affichage d'un tableau sur plusieurs lignes ??
    Par cedre22 dans le forum Balisage (X)HTML et validation W3C
    Réponses: 7
    Dernier message: 03/02/2006, 08h47
  2. Découper un tableau en deux
    Par cryptorchild dans le forum Langage
    Réponses: 4
    Dernier message: 28/01/2006, 23h30
  3. [Librairies] [PHP] Imprimer un énorme tableau sur plusieurs pages A4
    Par Doc.Fusion dans le forum Bibliothèques et frameworks
    Réponses: 8
    Dernier message: 30/11/2005, 17h45
  4. [JSP]affichage d'un tableau sur plusieurs pages
    Par MAJIK_ENIS dans le forum Servlets/JSP
    Réponses: 3
    Dernier message: 29/08/2005, 11h21
  5. [CR8] Problème tableau sur plusieurs pages???
    Par christophe28 dans le forum SAP Crystal Reports
    Réponses: 5
    Dernier message: 02/11/2004, 15h46

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