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 !
Salut à tous, j'ai un problème avec le script que j'utilise pour comparer les données de 2 feuilles excel d'un même classeur. En fait je constitue une liste qui me recupère les données de la 1ere feuille et je veux comparer les données de la 2e feuille à celle de la liste. Voici le script :
With Sheets("Nouveau")
Set zone1 = .Range(.Cells(2, 1), .Cells(.Range("A" & Application.Rows.Count).End(xlUp).Row, 1))
End With
With Sheets("Ancien")
Set zone2 = .Range(.Cells(2, 1), .Cells(.Range("A" & Application.Rows.Count).End(xlUp).Row, 1))
End With
For Each z2 In zone2 'constitution d'une liste sans doublons des "Anciens"
If Not liste.exists(z2.Value) Then liste(z2.Value) = z2.Value 'on crée une liste avec le fichier ancien.
Next z2
Maintenant j'aimerais pouvoir faire compiler ceci qui ne fonctionne pas :
If liste.exists(z1.Value) Then ' c'est ici qu'on calcul les départs en TGI.
'If z2.Offset(0, 6) = "01" And z1.Offset(0, 8) = "11" Then deptgi = deptgi + 1 ceci passe pas
If z1.Offset(0, 8) = "11" And liste(z2.Offset(0, 6)) = "01" Then deptgi = deptgi + 1 'ceci aussi donne une erreure
En fait il ya des personnes de ma 1ere feuille (Ancien) qui avaient le code "01" pour qui se code est devenu "11" dans la seconde feuille (Nouveau). Il faut noter aussi qu'il n'ya pas de doublons dans mes données. Merci d'avance ...
je ne sais pas comment tu cherches mais je t'avais donné la direction à suivre.
Ne voyant pas la proposition de Sousou, je suppose qu'il te l'a faite parvenir par MP.
Si c'est le cas je pense que ce n'est pas dans l'esprit d'un Fo_rum !
YANN-56 je viens de tester ton appli mais je crois que les données s'incrémentent à chaque clic sur le bouton. Entre temps, j'essaie de comprendre ton code, A+.
Bonjour à tous, j'ai regardé vos propositions et elles me semblent ok seulement je ne suis pas aussi doué que vous alors svp j'espère que cela ne vous dérrange pas de me commenter vos scripts. Merci d'avance.
Ayant trouvé la colonne où elle se trouve (Par exemple 9 pour ATHQ) je cherche "CDI" ou "CDD"
(Donnée en colonne 4 (D) de "Ancien" dans la ligne en-dessous...Soit dans la colonne 9 ou 10 (Ce pourquoi le "+1")
Merci YANN-56 même si je n'ai pas tout compris. J'ai regardé ton code mais tu ne calcules pas les personnes en retour TGI (c'est à dire qu'ils étaient par exemple en CDD dans "Ancien" mais passent en CDI dans "Nouveau"). Voici je te joins mon fichier avec plus de détails pour mieux t'éclaircir. Si cela ne te dérrange pas, j'aurais aimé également que tu me commente tes lignes de code dans le fichier même stp. Merci encore.
Bebere, ton script ne m'a pas l'air très compliqué également pour un débutant comme moi, ce serait aussi plus facile à comprendre si tu pouvais me le commenter stp pour que j'arrive à adapter dans le fichier réel.
Je ne travaille jamais sur une Feuille Excel!
(Mon aide sur ton fil a donc été une exception...... Tu peux regarder mes autres interventions sur XLD)
Elles ne me servent que de Bases de Données, et mes applis n'ont généralement qu'une Feuille avec un Bouton.
De mon coté j'utilise les ListView, et leur analyse après les avoir chargées.
Il est évident que si tu es débutant, cela ne va pas être de la tarte à comprendre.
Quand j'aurai une pause dans ce que j'ai en chantier, je te ferai une bidouille répondant à ton projet.
(Du moins la partie de ce que j'ai cru comprendre), car il est intéressant.
Comme il y a en cet instant 245 affichages de ta question, et que ton sujet est bien décrit,
j'en déduis que cela pourrait intéresser autres visiteurs. (Bien que personne ne l'ait dit!)😕
-----------------------------------------
Ceci par suite de ton M.P. dont tu devrais éviter l'utilisation, car cela n'est pas dans l'esprit d'XLD.
Je pense que ce service est fait pour autres discours n'ayant rien à voir avec le contenu de la discussion en cours!
-----------------------------------------
Pendant ce temps, cherche, triture, bidouille, et tu avanceras.
Bonjour le forum, Hello berbere, tempio, Yann-56 et les autres
J'ai un autre problème en ce qui concerne la comparaison de fichiers pour ma part mais plus simple apparamment (quoique...je cherche encore )
- J'ai une BDD avec un champ email
- J'ai un second fichier qui regroupe des emails (Feuil1 A:A) et des domaines (Feuil2 A:A) à exclure
je souhaite mettre une macro qui va regarder dans le 2e fichier et qui m'efface toutes les lignes de ma bdd contenant l'email ou le domaine présent dans ce 2e fichier.
Pour que ce soit plus clair je vous joint un fichier si vous avez une idée.
Bonjour bestch le forum
tu as posté deux sujets
voilà la réponse pour l'autre demande
a+
papou🙂
VB:
Sub supprimer()
Dim i&, fin&, fin1&, wbks As Workbook, wbkc As Workbook, chemin$, aa As Variant, a&
Set wbkc = ThisWorkbook
chemin = ThisWorkbook.Path
fin = ActiveSheet.Range("A" & Rows.Count).End(xlUp).Row
Set wbks = Workbooks.Open(chemin & "\Exclus.xls")
aa = wbks.Sheets("Feuil1").Range("A2:A" & wbks.Sheets("Feuil1").Range("A" & Rows.Count).End(xlUp).Row)
wbks.Close 0
With ActiveSheet
For a = fin to 2 step -1
For i = 1 To UBound(aa)
If Split(.Cells(a, 1), "@")(1) = aa(i, 1) Then .Cells(a, 1).Delete shift:=xlUp: GoTo 1
Next i
1 Next a
End With
End Sub
- 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