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 :

Synthèse des onglets dans un autre onglet [XL-2010]


Sujet :

Macros et VBA Excel

  1. #1
    Candidat au Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Mars 2012
    Messages
    4
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

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

    Informations forums :
    Inscription : Mars 2012
    Messages : 4
    Points : 2
    Points
    2
    Par défaut Synthèse des onglets dans un autre onglet
    Bonjour,

    J'ai une feuille avec plusieurs onglets et je voudrais recopier les données des onglets 5 à la fin dans l'onglet 4 ("Synthèse").
    Les infos à récupérer sont contenues dans un tableau de A15 à FXX, et doivent être écrites dans un tableau de A2 à FXX.

    J'ai écris un macro mais il ne récupère que la première ligne de l'onglet 5 et la deuxième ligne de l'onglet 7.

    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 Compilation()
    Dim i As Long, j As Long
    Worksheets("Synthèse").Select
     
    For i = 5 To Worksheets.Count
        j = i - 1
        For k = i - 1 To 30
            With Worksheets(i)
                Cells(j, 1).Value = .Range("A" & k + 11).Value
                Cells(j, 2).Value = .Range("B" & k + 11).Value
                Cells(j, 3).Value = .Range("C" & k + 11).Value
                Cells(j, 4).Value = .Range("D" & k + 11).Value
                Cells(j, 5).Value = .Range("E" & k + 11).Value
                Cells(j, 6).Value = .Range("F" & k + 11).Value
            End With
            j = j + 1
        Next
    Next
    End Sub

    Merci

  2. #2
    Expert éminent sénior Avatar de mercatog
    Homme Profil pro
    Inscrit en
    Juillet 2008
    Messages
    9 435
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Autre

    Informations forums :
    Inscription : Juillet 2008
    Messages : 9 435
    Points : 31 877
    Points
    31 877
    Par défaut
    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
    Sub Compilation()
    Dim LastLig As Long, NewLig As Long
    Dim i As Integer
     
    Application.ScreenUpdating = False
    If Worksheets.Count >= 5 Then
        NewLig = 2
        For i = 5 To Worksheets.Count
            With Worksheets(i)
                LastLig = .Cells(.Rows.Count, "A").End(xlUp).Row
                If LastLig >= 15 Then
                    'Pour copier
                    '.Range("A15:F" & LastLig).Copy Worksheets("Synthèse").Range("A" & NewLig)
                    'Pour transférer les valeurs
                    Worksheets("Synthèse").Range("A" & NewLig & ":F" & NewLig + LastLig - 15).Value = .Range("A15:F" & LastLig).Value
                    NewLig = NewLig + LastLig - 14
                End If
            End With
        Next i
    End If
    End Sub
    Cordialement.
    J'utilise toujours le point comme séparateur décimal dans mes tests.

  3. #3
    Candidat au Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Mars 2012
    Messages
    4
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

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

    Informations forums :
    Inscription : Mars 2012
    Messages : 4
    Points : 2
    Points
    2
    Par défaut
    Merci, ça fonctionne

  4. #4
    Expert éminent sénior
    Avatar de kiki29
    Homme Profil pro
    ex Observeur CGG / Analyste prog.
    Inscrit en
    Juin 2006
    Messages
    6 132
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Finistère (Bretagne)

    Informations professionnelles :
    Activité : ex Observeur CGG / Analyste prog.

    Informations forums :
    Inscription : Juin 2006
    Messages : 6 132
    Points : 11 274
    Points
    11 274

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

Discussions similaires

  1. [XL-2007] Déplacer des lignes dans un autre onglet selon valeur d'une cellule
    Par Accessifiante dans le forum Macros et VBA Excel
    Réponses: 13
    Dernier message: 06/05/2014, 16h45
  2. [XL-2007] Créer une macro pour supprimer des onglets dans un autre classeur
    Par nicosd54 dans le forum Macros et VBA Excel
    Réponses: 0
    Dernier message: 08/03/2011, 10h01
  3. [XL-2003] copier les données d'un tableau d'un onglet dans un autre onglet suivant une condition
    Par chouki60 dans le forum Macros et VBA Excel
    Réponses: 6
    Dernier message: 28/02/2011, 07h48
  4. [XL-2002] copier onglet dans un autre onglet
    Par patou41000 dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 15/04/2009, 20h58
  5. création dynamique d'onglets dans d'autres onglets
    Par chourmo dans le forum Delphi
    Réponses: 4
    Dernier message: 18/07/2006, 12h12

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