Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

Fusionner 2 feuilles

  • Initiateur de la discussion Initiateur de la discussion Karine11
  • Date de début Date de début

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

K

Karine11

Guest
Bonjour à tous!

J'ai une nouvelle fois besoin de vous!!!!
Voilà, je souhaite créer une table visite médicale et j'ai deux sources excel:
- une base de donnée où l'extraction se fait automatiquement car c'est là que sont inscrits les nouveaux salariés,
- et une ancienne base de donnée avec les anciens salariés
Je n'arrive pas à les regrouper dans un seul tableau et qu'il se mettent pas ordre alpha....

Je pense qu'avec les fichiers se sera plus parlant.... en j'espère!

Merci!
 

Pièces jointes

Re : Fusionner 2 feuilles

Bonjour


Je n'arrive pas à les regrouper dans un seul tableau et qu'il se mettent pas ordre alpha....
Tu ne veux pas de tri alphabétique? ou tu en veux un ? 😉

J'ai ouvert tes trois fichiers dans la même instance d'Excel
puis j'ai fait les manipulations suivantes (ici captées par l'enregistreur de macros)
Code:
Sub Macro1()
'
' Macro1 Macro
' Macro enregistrée le 22/07/2012 par Staple1600
'
    Range("A1").Select
    Range(Selection, Selection.End(xlDown)).Select
    Selection.Copy
    Windows("Listing salariés.xlsx").Activate
    Range("C1").Select
    ActiveSheet.Paste
    Windows("Anciens salariés.xlsx").Activate
    Windows("Nouveaux salariés.xlsx").Activate
    Range("A1").Select
    Range(Selection, Selection.End(xlDown)).Select
    Application.CutCopyMode = False
    Selection.Copy
    Windows("Listing salariés.xlsx").Activate
    Range("C317").Select
    ActiveSheet.Paste
    Rows("317:317").Select
    Application.CutCopyMode = False
    Selection.Delete Shift:=xlUp
    Range("C1").Select
    Range(Selection, Selection.End(xlDown)).Select
    Range("C1:C454").AdvancedFilter Action:=xlFilterCopy, CopyToRange:=Range( _
        "B1"), Unique:=True
    Columns("C:C").Select
    Selection.Delete Shift:=xlToLeft
    Range("B1").Select
    Range(Selection, Selection.End(xlDown)).Select
    Selection.Sort Key1:=Range("B2"), Order1:=xlAscending, Header:=xlGuess, _
        OrderCustom:=1, MatchCase:=False, Orientation:=xlTopToBottom, _
        DataOption1:=xlSortNormal
End Sub

Au final j'obtiens une liste de 326 nons (en ayant supprimé les doublons)

Tu es d'accord avec ce résultat?

PS: Tu peux tester la macro (en ayant au préalable ouvert tes 3 fichiers), elle devrait fonctionner telle quelle sur ton PC.
Le classeur actif où est stocké la macro est AnciensSalariés.xlsx.
C'est donc de ce classeur qu'il faut lancer la macro.
 
Dernière édition:
Re : Fusionner 2 feuilles

Re


Une version plus "propre" et plus à ma sauce avec commentaires en sus
VB:
Sub a()
Dim wbk As Workbook: Set wbk = Workbooks("Nouveaux salariés.xlsx")
Dim r1, r2, r3, fin&
Set r1 = Workbooks("Anciens salariés.xlsx").Sheets(1).[A1].CurrentRegion
Set r2 = wbk.Sheets(1).Range("A2:A" & wbk.Sheets(1).[A65536].End(xlUp).Row)
Set r3 = Workbooks("Listing salariés.xlsx").Sheets(1).[A1]
'recopie des feuilles dans Listing salariés
r1.Copy r3
fin = Workbooks("Listing salariés.xlsx").Sheets(1).[A65536].End(xlUp).Row + 1
r2.Copy Workbooks("Listing salariés.xlsx").Sheets(1).Cells(fin, "A")
'suppression des doublons et tri alpha
With Workbooks("Listing salariés.xlsx").Sheets(1)
    .Range("A1").CurrentRegion.Sort Key1:=.Range("A2"), Order1:=xlAscending, Header:=xlGuess, _
            OrderCustom:=1, MatchCase:=False, Orientation:=xlTopToBottom, _
            DataOption1:=xlSortNormal
    .Range("A1").CurrentRegion.AdvancedFilter Action:=xlFilterCopy, CopyToRange:=.Range( _
            "B1"), Unique:=True
    With .Columns("B:B") ' mise en forme
    .Columns.AutoFit
    .Font.Name = "Arial"
    .Font.Size = 10
    End With
End With
End Sub
 
Re : Fusionner 2 feuilles

Merci de m'avoir consacré de ton temps, mais cela ne résout pas mon problème!
Je souhaite que les nouveaux salariés prochainement inscrit sur le feuille nouveaux salariés s'insert automatiquement sur la feuille Listing salariés dans je dois garder la copie automatique.
Une idée?
Merci.
 
Re : Fusionner 2 feuilles

Re

Ah bon?

Tu as essayé le code que je te propose?

Pourtant, il fait ce que tu demandes
Code:
Je n'arrive pas à les regrouper dans un seul tableau et qu'il se mettent pas ordre alpha....
sauf que le tri alpha se fait (comme demandé par contre dans ton classeur)

C'est dans cette liste que je voudrais inserer les anciens salariés et mettre par ordre alpha
 
Dernière édition:
Re : Fusionner 2 feuilles

Merci pour ton aide, je crois que ta réponse est trop complexe pour moi qui suis novice sur excel... Macro?? VBA?? 😕 Tout celà ne me parle pas même en faisant des recherche sur internet j'ai du mal à comprendre!! Mais encore merci pour ton aide!
 
Re : Fusionner 2 feuilles

Bonjour


Ici le noviciat dure moins longtemps d'au couvent des Augustines 😉
Donc pour lancer une macro:
1) Quand tu es dans Excel, tu appuies simultanément sur les touches ALT et F11
La tu te retrouves dans ce qu'on appelle la salle des Délices, communément nommée Microsoft Visual Basic Editor (ou VBE pour les fainéants du clavier comme moi 😉
2)Tu vas dans le menu: Insertion et tu choisis Module
Tu y copies la macro présente dans mon précédent message
3)Puis tu retournes dans Excel, en faisant : ALT+Q
4) Là, tu fais Outils/Macros/ et tu sélectionnes la macro que tu veux Exécuter

Un petit test pour voir si mes explications sont claires
Essaie d'exécuter la petit macro ci-dessous
Code:
Sub MaPremiereMACRO()
Dim JeSuis As String, MonMessage As String
JeSuis = Application.UserName
MonMessage = "Bonjour à toi, " & JeSuis & vbCrLf & vbCrLf
MonMessage = MonMessage & "Nous sommes le: " & Date & ", il est: " & Time
MsgBox MonMessage, vbInformation, "Test"
End Sub

Est-ce que quelque chose s'est bien affiché sur ton écran ?
 
Re : Fusionner 2 feuilles

Hey super Prof!!!
Le test a bien fonctionné et je comprend mieux le principe, je te remercie!
Mais créer moi-même une macro, c'est pas gagnié!!!
Les fichiers que j'ai mis n'étaient que des exemples pour essayer de compendre et de faire pas moi-même...
je t'ai mis le vrai fichier... si tu peux regarder...
En tout cas merci beaucoup pour ton aide!!!
 
Re : Fusionner 2 feuilles

Le fichier...
En faite c'est les noms de l'historique que je souhaite intégrer à ma base visite médicale, mais comme tu a pu le voir ma base visite médicale est alimentée par une base de donné salarié qui sera mise à jour donc il faut consserver l'incrémination! (je ne peux pas passer cette base de donnée salarié car elle est confidentielle...)
 
Re : Fusionner 2 feuilles

Bonsoir

OUKILÉ le "vrai fichier"?
Quand un fichier contient des données confidentielels, il suffit de l'anonyser en créant une copie avec des noms fictifs
(Mettre en A1 NOM1 puis recopier vers le bas)
ou pour continuer l'apprentissage "macrotique", Exécute la macro ci-dessous dans un nouveau classeur
Code:
Sub WE_ARE_ANONYMOUS()
Dim EXEMPLE As Workbook:Set EXEMPLE = Workbooks.Add(xlWBATWorksheet)
With EXEMPLE.Sheets(1)
With .Range("A1:B1")
    .Value = Array("NOMS", "PRENOMS")
    .Font.Bold = True
End With
    With .Range("A2:A50")
        .FormulaLocal = "=""NOM""&LIGNE()-1"
        .Value = .Value
            With .Offset(, 1)
            .FormulaLocal = "=""Prenom""&LIGNE()-1"
            .Value = .Value
            End With
    End With
End With
End Sub

Je ne le vois point

PS: As-tu essayer la macro du message#3 sur tes fichiers joints dans ton premier message?
 
Dernière édition:
Re : Fusionner 2 feuilles

Bonjour Staple1600!
Voici les fichiers... J'ai fais comme tu me l'a conseillé pour l'anonima!
Par contre mes fichiers sont trop volumineux pour le téléchargement, je les ai donc réduits!
J'espère que mes explications seront claires...
Je vais continuer ma formation Macro!
Merci super prof!!!
 

Pièces jointes

Re : Fusionner 2 feuilles

Bonjour

Je repasse plus tard.
Dois partir bosser un peu.
Et malheureusement pas sur Excel cet aprés-midi 😉

PS: Tu n'as pas répondu à la dernière question de mon précédent message 😉
 
Re : Fusionner 2 feuilles

Bonjour!
J'ai essayé la macro que tu as créé pour mon premier fichier et je suis fière de moi car j'y arrive!!!
Enfin je sais maintenant insérer une macro mais la créer....
Si tu as le temps aujourd'hui pour y jeter un oeil ça me permettrai d'avancer sur d'autres tableaux!
Merci et bonne journéé!!
 
Re : Fusionner 2 feuilles

Bonjour


Content que tu prennes plaisir à faire du VBA.

Aujoursd'hui, ca va être short aussi, c'est la journée pique-nique avec les collégues.

je suis en train de finir dé découper mon cake au jambon
et de remplir la glacière.

J'espère que mes petits camarades du forum viendront prendre le relai pour te filer un coup de main.

Quand à moi ce sera pas avant 19 heures ce soir.
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD
Assurez vous de marquer un message comme solution pour une meilleure transparence.

Discussions similaires

Réponses
4
Affichages
761
Réponses
3
Affichages
592
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…