Copie de données d'une feuille excel vers une autre avec conditi
marfouzsiaka
Messages postés
6
Date d'inscription
Statut
Membre
Dernière intervention
-
michel_m Messages postés 16602 Date d'inscription Statut Contributeur Dernière intervention -
michel_m Messages postés 16602 Date d'inscription Statut Contributeur Dernière intervention -
Bonjour a tous,
J'ai un fichier Excel avec deux feuilles : "Domaines " et "Référentiel Applications PSA".
Sur chacune des feuilles, on a une colonne A comportant les mêmes données que colonne A de la seconde feuille (mais pas dans la même ordre). Donc je veux copier les données de la colonne B de la feuille "Domaines" vers la colonne B de la feuille "Référentiel Applications PSA" avec la condition que la donné compris dans la colonne A de la feuille "Domaines" soit la même que celle de la colonne A de la feuille "Référentiel Applications PSA"
Merci pour votre aide
J'ai un fichier Excel avec deux feuilles : "Domaines " et "Référentiel Applications PSA".
Sur chacune des feuilles, on a une colonne A comportant les mêmes données que colonne A de la seconde feuille (mais pas dans la même ordre). Donc je veux copier les données de la colonne B de la feuille "Domaines" vers la colonne B de la feuille "Référentiel Applications PSA" avec la condition que la donné compris dans la colonne A de la feuille "Domaines" soit la même que celle de la colonne A de la feuille "Référentiel Applications PSA"
Merci pour votre aide
A voir également:
- Copie de données d'une feuille excel vers une autre avec conditi
- Déplacer une colonne excel - Guide
- Feuille de pointage excel - Télécharger - Tableur
- Liste déroulante excel - Guide
- Copie cachée - Guide
- Trier des données excel - Guide
3 réponses
Bonjour,
Curieux qu'en 2° année de DUT info, tu poses une telle question !
en attendant
Michel
Curieux qu'en 2° année de DUT info, tu poses une telle question !
en attendant
Mettre le classeur sans données confidentielles en pièce jointe sur « mon-partage.fr »
et faire un clic droit-coller le raccourci dans votre message
Michel
Bonjour
Option Explicit
'------------------------------------------------------------------------------
Sub copier_ss_condition()
Dim Derlig As Integer, T_nom, Idx As Integer, D_nom As Object, T_out
Dim T_psa, T_in
Dim Name As String, Cptr As Integer, Col As Byte
'-------------------------initialisations
Application.ScreenUpdating = False
With Sheets("Domaines")
Derlig = .Columns("A").Find(what:="*", searchdirection:=xlPrevious).Row
.Range("C2:H" & Derlig).Clear
T_nom = .Range("A2:A" & Derlig)
End With
Set D_nom = CreateObject("scripting.dictionary")
For Idx = 1 To UBound(T_nom)
If Not D_nom.exists(T_nom(Idx, 1)) Then: D_nom.Add T_nom(Idx, 1), Idx
Next
ReDim T_out(1 To D_nom.Count, 1 To 6)
With Sheets("Référentiel Applications PSA")
Derlig = .Columns("A").Find(what:="*", searchdirection:=xlPrevious).Row
T_psa = .Range("A2:A" & Derlig)
T_in = .Range("C2:H" & Derlig)
End With
'------------------------------------------------traitement
For Cptr = 1 To UBound(T_psa)
Name = T_psa(Cptr, 1)
If D_nom.exists(Name) Then
Idx = D_nom.Item(Name)
For Col = 1 To 6
T_out(Idx, Col) = T_in(Cptr, Col)
Next
End If
Next
'-----------------------------restitution
With Sheets("Domaines").Range("C2:H" & D_nom.Count + 1)
.Value = T_out
.VerticalAlignment = xlTop
.WrapText = True
.Borders.Weight = xlThin
End With
Sheets("Domaines").Activate
End Sub
Bonjour Michel,
Merci pour tes réponses. Sa marche très bien. Mais au lieu de copier sur la feuille "Référentiel Applications PSA" , sa copie sur la feuille "Domaines". Mais c'est pas grave, le plus dur est déjà fait. Moi même je vais voir comment le copier sur "Domaines" au lieu de "Référentiel Applications PSA"
Merci pour tes réponses. Sa marche très bien. Mais au lieu de copier sur la feuille "Référentiel Applications PSA" , sa copie sur la feuille "Domaines". Mais c'est pas grave, le plus dur est déjà fait. Moi même je vais voir comment le copier sur "Domaines" au lieu de "Référentiel Applications PSA"
voici le lien du fichier https://mon-partage.fr/f/gJzUQsxf/