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 :

Copier les données d'une feuille à une autre


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Femme Profil pro
    Architecte réseau
    Inscrit en
    Juin 2022
    Messages
    9
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : Architecte réseau

    Informations forums :
    Inscription : Juin 2022
    Messages : 9
    Par défaut Copier les données d'une feuille à une autre
    Hello

    J'ai écrit une fonction qui copie des données d'une feuille à une autre. Dans la première feuille j'ai 3 colonnes de 3 règles différentes (Completness, Accuracy, Validity) mais dans la deuxième feuille je veux collecter ces règles dans une seule colonne et mettre le type de chaque règle devant (voir photo, la feuille SOURCE c'est ce que j'ai et la feuille COPY c'est ce que je veux avoir)

    Nom : PH1.PNG
Affichages : 104
Taille : 23,7 Ko
    Nom : PH2.PNG
Affichages : 107
Taille : 25,8 Ko

    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
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    Function columnLookup(Name As String, Line As Range) As Integer
    Dim i As Integer
    Dim Cell As Range
     
    i = 0
    For Each Cell In Line
        If Cell.Value = Name Then
            i = Cell.Column
        End If
    Next Cell
     
    columnLookup = i
    End Function
     
    Sub CopyfromSource()
     
     
        Dim k As Variant
        Dim localworksheet, globalWorksheet As String
        Dim currentLine, currentLine1 As Integer
        Dim classeur As Workbook
     
        Dim nameFile As String
     
     
        Dim headerSource As Range
        Dim headerCopy As Range
     
        Dim attributSource, attributCopy As Integer
     
     
        globalWorksheet = "Source"
        localworksheet = "Copy"
     
     
        Worksheets(globalWorksheet).Activate
     
        Set headerSource = Worksheets(globalWorksheet).Range("A1", Worksheets(globalWorksheet).Range("A1").End(xlToRight))
        Set headerCopy = Worksheets(localworksheet).Range("A1", Worksheets(localworksheet).Range("A1").End(xlToRight))
     
     
        attributSource = columnLookup("Attribute", headerSource)
        attributCopy = columnLookup("Attribute", headerCopy)
     
     
        'Copy
     
        currentLine1 = 2
     
        For k = 2 To 10
     
     
            Worksheets(localworksheet).Cells(currentLine1, attributCopy).Value = Worksheets(globalWorksheet).Cells(k, attributSource).Value
     
            currentLine1 = currentLine1 + 1
     
        Next k
     
     
        Worksheets(localworksheet).Activate
     
     
        ActiveSheet.Copy
     
     
    End Sub

  2. #2
    Expert confirmé
    Homme Profil pro
    Responsable des études
    Inscrit en
    Juillet 2014
    Messages
    2 681
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Aude (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Responsable des études
    Secteur : Santé

    Informations forums :
    Inscription : Juillet 2014
    Messages : 2 681
    Par défaut
    Bonjour,

    Quelle version d'excel as-tu ?
    A partir de 2010 il est possible d'installer Power Query qui permet de le faire en qq clic via le dépivotage de colonnes

    Nom : dévipotage.jpg
Affichages : 98
Taille : 68,8 Ko

  3. #3
    Membre averti
    Femme Profil pro
    Architecte réseau
    Inscrit en
    Juin 2022
    Messages
    9
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : Architecte réseau

    Informations forums :
    Inscription : Juin 2022
    Messages : 9
    Par défaut
    Merci pour ton aide, mais j'en aurai besoin en code VBA, ce n'est pas possible de le faire avec VBA ?

  4. #4
    Expert confirmé
    Homme Profil pro
    Responsable des études
    Inscrit en
    Juillet 2014
    Messages
    2 681
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Aude (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Responsable des études
    Secteur : Santé

    Informations forums :
    Inscription : Juillet 2014
    Messages : 2 681
    Par défaut
    Citation Envoyé par mimich_88 Voir le message
    Merci pour ton aide, mais j'en aurai besoin en code VBA, ce n'est pas possible de le faire avec VBA ?
    Une fois la requête power query créée il est possible de l'actualiser par vba

    Si tu veux refaire ce que fait power query par macro c'est certainement possible, mais perso je n'ai pas le temps de réinventer la roue, c'est pourquoi je t'ai proposer cette solution

Discussions similaires

  1. Copier les données d'une colonne dans une autre feuille en VBA
    Par Icamstudent dans le forum Macros et VBA Excel
    Réponses: 23
    Dernier message: 22/04/2020, 15h49
  2. Réponses: 9
    Dernier message: 26/05/2016, 18h25
  3. [XL-2010] Macro Rechercher un code et copier les données dans une autre feuille
    Par adnane01 dans le forum Macros et VBA Excel
    Réponses: 6
    Dernier message: 20/08/2015, 17h41
  4. [XL-2003] Création d'un planning - Copier les données d'une feuille à une autre
    Par alex62217 dans le forum Macros et VBA Excel
    Réponses: 0
    Dernier message: 30/09/2013, 00h03
  5. Réponses: 5
    Dernier message: 15/07/2013, 10h32

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