Bonjour à tous,
Petit nouveau dans le développement VBA, je cherche à me perfectionner pour développer des outils qui me font gagner du temps au quotidien.
Je suis cependant bien embêter car après plusieurs heures de recherches et d'essais, je n'arrive pas à développer mon projet.
Je vous présente mon projet test :
3 onglets de données sources représentant chacun une ville
1 onglet de destination (là ou je veux copier les nouvelles données issues des 3 onglets sources)
1) Dans l'onglet de destination, j'aimerais copier les données dans les colonnes B à E, issues des 3 onglets de données sources.
2) Etant donné qu'il y a déjà des données dans l'onglet de destination, je souhaite ne copier que les nouvelles données. Pour se faire, la macro doit reconnaitre par une clé unique, quelles sont les lignes déjà copier (en concaténant les champs Date + Thème + Description de l'évènement) de chaque onglet.
3) la macro va alors copier les données identifiées comme "non doublon" à la suite dans l'onglet de destination
4) Pour chaque onglet, la macro doit également recopier le nom de l'onglet dans la colonne A afin d'identifier de quelle source provient l'information.
5) Pour chaque onglet, toutes les données jusqu’à la dernière valeur non vide sont à copier dans l’onglet destination
Sub copie_données()
' Définition des variables
Dim Par As Range 'Variable d'incrémentation Paris
Dim Rou As Range 'Variable d'incrémentation Rouen
Dim Ren As Range 'Variable d'incrémentation Rennes
Dim Des As Range 'dernière ligne non vide
' copie_données
' Dernière ligne non vide du fichier de destination
Des = Sheets("Destination").Cells(Rows.Count, colonne).End(xlUp).Row
' copie_données Paris
Sheets("Paris").Select
With Sheets("Paris")
Do While Cells(Par, 1) <> ""
.Range(Cells(Par, 1), Cells(Par, 3)).Copy .Sheets("Destination").Cells(Des, 3)
Ldv = Par + 1
Des = Des + 1
Loop
End With
End Sub
Voici le lien de mon fichier exemple :
https://www.cjoint.com/c/KInqRsRgDUV
Sauriez-vous m’aider à débuter mon outil ?
Je vous remercie en avance pour votre aide colaborative à mon petit projet
Petit nouveau dans le développement VBA, je cherche à me perfectionner pour développer des outils qui me font gagner du temps au quotidien.
Je suis cependant bien embêter car après plusieurs heures de recherches et d'essais, je n'arrive pas à développer mon projet.
Je vous présente mon projet test :
3 onglets de données sources représentant chacun une ville
1 onglet de destination (là ou je veux copier les nouvelles données issues des 3 onglets sources)
1) Dans l'onglet de destination, j'aimerais copier les données dans les colonnes B à E, issues des 3 onglets de données sources.
2) Etant donné qu'il y a déjà des données dans l'onglet de destination, je souhaite ne copier que les nouvelles données. Pour se faire, la macro doit reconnaitre par une clé unique, quelles sont les lignes déjà copier (en concaténant les champs Date + Thème + Description de l'évènement) de chaque onglet.
3) la macro va alors copier les données identifiées comme "non doublon" à la suite dans l'onglet de destination
4) Pour chaque onglet, la macro doit également recopier le nom de l'onglet dans la colonne A afin d'identifier de quelle source provient l'information.
5) Pour chaque onglet, toutes les données jusqu’à la dernière valeur non vide sont à copier dans l’onglet destination
Sub copie_données()
' Définition des variables
Dim Par As Range 'Variable d'incrémentation Paris
Dim Rou As Range 'Variable d'incrémentation Rouen
Dim Ren As Range 'Variable d'incrémentation Rennes
Dim Des As Range 'dernière ligne non vide
' copie_données
' Dernière ligne non vide du fichier de destination
Des = Sheets("Destination").Cells(Rows.Count, colonne).End(xlUp).Row
' copie_données Paris
Sheets("Paris").Select
With Sheets("Paris")
Do While Cells(Par, 1) <> ""
.Range(Cells(Par, 1), Cells(Par, 3)).Copy .Sheets("Destination").Cells(Des, 3)
Ldv = Par + 1
Des = Des + 1
Loop
End With
End Sub
Voici le lien de mon fichier exemple :
https://www.cjoint.com/c/KInqRsRgDUV
Sauriez-vous m’aider à débuter mon outil ?
Je vous remercie en avance pour votre aide colaborative à mon petit projet