Doublon après import de données
Résolu/Fermé
jenny57_65
Messages postés
10
Date d'inscription
samedi 23 avril 2016
Statut
Membre
Dernière intervention
30 mai 2016
-
24 avril 2016 à 10:00
Frenchie83 Messages postés 2240 Date d'inscription lundi 6 mai 2013 Statut Membre Dernière intervention 11 août 2023 - 31 mai 2016 à 04:10
Frenchie83 Messages postés 2240 Date d'inscription lundi 6 mai 2013 Statut Membre Dernière intervention 11 août 2023 - 31 mai 2016 à 04:10
A voir également:
- Doublon après import de données
- Supprimer doublon excel - Guide
- Effacer les données de navigation - Guide
- Reinstaller windows sans perte de données - Guide
- Acquisition de données pci et contrôleur de traitement du signal ✓ - Forum Windows 10
- Tirage au sort excel aléatoire sans doublon ✓ - Forum Excel
12 réponses
Frenchie83
Messages postés
2240
Date d'inscription
lundi 6 mai 2013
Statut
Membre
Dernière intervention
11 août 2023
337
24 avril 2016 à 10:38
24 avril 2016 à 10:38
Bonjour
Essayez ceci
Cdlt
Essayez ceci
For LIGNE_BALANCE_N1 = 7 To DERN_LIGNE_BALANCE_N1 COMPTE_TROUVE = "NON" COMPTE = Sheets(3).Cells(LIGNE_BALANCE_N1, 1).Value For LIGNE_BALANCE_VARIATION = 7 To DERN_LIGNE_BALANCE_VARIATION If Sheets(4).Cells(LIGNE_BALANCE_VARIATION, 1).Value = Sheets(3).Cells(LIGNE_BALANCE_N1, 1).Value Then COMPTE_TROUVE = "OUI" Next PREMIERE_LIGNE_VIDE = Sheets(4).Columns(1).Find("*", , , , xlByColumns, xlPrevious).Row + 1 If COMPTE_TROUVE = "NON" Then If Sheets(4).Cells(LIGNE_BALANCE_VARIATION, 1).Value <> "COMPTE" Then Sheets(4).Cells(PREMIERE_LIGNE_VIDE, 1).Value = Sheets(3).Cells(LIGNE_BALANCE_N1, 1).Value Sheets(4).Cells(PREMIERE_LIGNE_VIDE, 2).Value = Sheets(3).Cells(LIGNE_BALANCE_N1, 2).Value End If End If If Sheets(3).Cells(LIGNE_BALANCE_N1, 3).Value <> "" Then Sheets(4).Cells(PREMIERE_LIGNE_VIDE, 4).Value = Sheets(3).Cells(LIGNE_BALANCE_N1, 3).Value ElseIf Sheets(3).Cells(LIGNE_BALANCE_N1, 4).Value <> "" Then Sheets(4).Cells(PREMIERE_LIGNE_VIDE, 4).Value = Sheets(3).Cells(LIGNE_BALANCE_N1, 4).Value * -1 End If Next
Cdlt
Frenchie83
Messages postés
2240
Date d'inscription
lundi 6 mai 2013
Statut
Membre
Dernière intervention
11 août 2023
337
24 avril 2016 à 12:33
24 avril 2016 à 12:33
Curieux
N'ayant pas votre fichier sous les yeux, j'en ai crée un avec les feuilles 3 et 4.
Dans la feuille 4 j''ai recopier quelques valeurs de la feuille 3, et j'ai lancé la macro, celles qui sont déjà présentes dans la feuille 4 ne sont pas recopiées. Le problème se situe ailleurs.
Allez sur la feuille 4 et cliquer sur le bouton.
https://www.cjoint.com/c/FDykGEIFbNw
Cdlt
N'ayant pas votre fichier sous les yeux, j'en ai crée un avec les feuilles 3 et 4.
Dans la feuille 4 j''ai recopier quelques valeurs de la feuille 3, et j'ai lancé la macro, celles qui sont déjà présentes dans la feuille 4 ne sont pas recopiées. Le problème se situe ailleurs.
Allez sur la feuille 4 et cliquer sur le bouton.
https://www.cjoint.com/c/FDykGEIFbNw
Cdlt
jenny57_65
Messages postés
10
Date d'inscription
samedi 23 avril 2016
Statut
Membre
Dernière intervention
30 mai 2016
24 avril 2016 à 13:26
24 avril 2016 à 13:26
puis-je vous transmettre mon fichier?
https://www.cjoint.com/c/FDylymwG6wH
le problème ce situe dans la feuille variation, la deuxième ligne "55555 - capital" (où il y a juste un solde inscrit) ne devrait pas apparaître étant donné que je lui ai demandé au préalablement :
- importer les COMPTE, INTITULE et SOLDES de la feuille 2 sur la feuille 4
- de me comparer les soldes des comptes identiques des feuilles 2 et 3 et d'importer dans la feuille 4
maintenant je cherche à importer sur la feuille 4, les COMPTE, INTITULE et SOLDE qui sont présent en feuille 3 et qu'il manque en feuille 4
cdt
https://www.cjoint.com/c/FDylymwG6wH
le problème ce situe dans la feuille variation, la deuxième ligne "55555 - capital" (où il y a juste un solde inscrit) ne devrait pas apparaître étant donné que je lui ai demandé au préalablement :
- importer les COMPTE, INTITULE et SOLDES de la feuille 2 sur la feuille 4
- de me comparer les soldes des comptes identiques des feuilles 2 et 3 et d'importer dans la feuille 4
maintenant je cherche à importer sur la feuille 4, les COMPTE, INTITULE et SOLDE qui sont présent en feuille 3 et qu'il manque en feuille 4
cdt
Frenchie83
Messages postés
2240
Date d'inscription
lundi 6 mai 2013
Statut
Membre
Dernière intervention
11 août 2023
337
24 avril 2016 à 14:40
24 avril 2016 à 14:40
Le problème se situe ailleurs et apparemment, c'est par ici
la ligne suivante est en remarque "
Cdlt
'Recherche de la dernière ligne dans la balance n-1 ' DERN_LIGNE_BALANCE_N1 = Sheets(3).Columns(1).Find("*", , , , xlByColumns, xlPrevious).Row 'Recherche de la dernière ligne dans la balance n-1 DERN_LIGNE_BALANCE_VARIATION = Sheets(4).Columns(1).Find("*", , , , xlByColumns, xlPrevious).Row 'Reprise des nouveaux comptes présents en N-1 et plus présents en N à la suite For LIGNE_BALANCE_N1 = 7 To DERN_LIGNE_BALANCE_N1 COMPTE_TROUVE = "NON" COMPTE = Sheets(3).Cells(LIGNE_BALANCE_N1, 1).Value For LIGNE_BALANCE_VARIATION = 7 To DERN_LIGNE_BALANCE_VARIATION
la ligne suivante est en remarque "
DERN_LIGNE_BALANCE_N1 = Sheets(3).Columns(1).Find("*", , , , xlByColumns, xlPrevious).Row"Enlevez la quote(apostrophe) en début de phrase.
Cdlt
jenny57_65
Messages postés
10
Date d'inscription
samedi 23 avril 2016
Statut
Membre
Dernière intervention
30 mai 2016
24 avril 2016 à 15:01
24 avril 2016 à 15:01
ça fonctionne !! merci beaucoup :)
je vais finir la rédaction de mon mémoire je vous posterai ma note après mon oral (le 20 mai) ! :))
bonne continuation
cdt
je vais finir la rédaction de mon mémoire je vous posterai ma note après mon oral (le 20 mai) ! :))
bonne continuation
cdt
jenny57_65
Messages postés
10
Date d'inscription
samedi 23 avril 2016
Statut
Membre
Dernière intervention
30 mai 2016
14 mai 2016 à 15:08
14 mai 2016 à 15:08
bonjour,
je reviens sur ce même post. je me suis replongé dans cette macro pour préparer mon oral et j'ai deux petits problèmes .
1er problème: la macro vu précédemment fonctionne sur l'étude de quelques chiffres "test" (sur 5 -6 lignes) comme on l'a déjà vu ci -dessus mais dès que je souhaite utiliser la macro pour un cas concret (sur une plus grande liste de chiffre = a peu près 500 lignes) je me retrouve de nouveau avec le problème de doublon!
2ème problème : idem dès que je veux vérifier si la somme des nombres des colonnes c et d (dans les onglets 2 et aussi 3) est identique et m'afficher un message d'erreur si ce n'est pas le cas ,ça fonctionne sur une série de chiffres " test" mais pas sur une longue série de chiffre. j'ai bien vérifié les 2 colonnes sont identiques mais il m'affiche le message d'erreur comme si ça n'était pas le cas.
je vous transmet le fichier excel et vous trouverez dans le dernier onglet les tableaux a recopier sur les onglets 2 et 3 pour la démonstration (balances n et n-1)
https://www.cjoint.com/c/FEonhlv4pcH
merci d'avance,
jennifer
je reviens sur ce même post. je me suis replongé dans cette macro pour préparer mon oral et j'ai deux petits problèmes .
1er problème: la macro vu précédemment fonctionne sur l'étude de quelques chiffres "test" (sur 5 -6 lignes) comme on l'a déjà vu ci -dessus mais dès que je souhaite utiliser la macro pour un cas concret (sur une plus grande liste de chiffre = a peu près 500 lignes) je me retrouve de nouveau avec le problème de doublon!
2ème problème : idem dès que je veux vérifier si la somme des nombres des colonnes c et d (dans les onglets 2 et aussi 3) est identique et m'afficher un message d'erreur si ce n'est pas le cas ,ça fonctionne sur une série de chiffres " test" mais pas sur une longue série de chiffre. j'ai bien vérifié les 2 colonnes sont identiques mais il m'affiche le message d'erreur comme si ça n'était pas le cas.
je vous transmet le fichier excel et vous trouverez dans le dernier onglet les tableaux a recopier sur les onglets 2 et 3 pour la démonstration (balances n et n-1)
https://www.cjoint.com/c/FEonhlv4pcH
merci d'avance,
jennifer
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
Frenchie83
Messages postés
2240
Date d'inscription
lundi 6 mai 2013
Statut
Membre
Dernière intervention
11 août 2023
337
14 mai 2016 à 16:11
14 mai 2016 à 16:11
Bonjour
Pour la question2, appliquez l'arrondi avec 2chiffres après la virgule, comme ceci
Pour la question 1, donnez moi des précisions, où y- a t-il des doublons? Où dois -je regarder? quelle colonne? Aidez-moi un peu car je ne peux reprendre toute votre application pour essayer de comprendre ce que vous avez voulu faire et on gagnera du temps.
cdlt
Pour la question2, appliquez l'arrondi avec 2chiffres après la virgule, comme ceci
'vérifier si la balance N est équilibrée Sheets(2).Select If Round(Application.Sum(Range("C7").EntireColumn), 2) <> Round(Application.Sum(Range("D7").EntireColumn), 2) Then MsgBox "La balance N n'est pas équilibrée", vbInformation, "Avertissement" End If 'vérifier si la balance N-1 est équilibrée Sheets(3).Select If Round(Application.Sum(Range("C7").EntireColumn), 2) <> Round(Application.Sum(Range("D7").EntireColumn), 2) Then MsgBox "La balance N-1 n'est pas équilibrée", vbInformation, "Avertissement" End If
Pour la question 1, donnez moi des précisions, où y- a t-il des doublons? Où dois -je regarder? quelle colonne? Aidez-moi un peu car je ne peux reprendre toute votre application pour essayer de comprendre ce que vous avez voulu faire et on gagnera du temps.
cdlt
jenny57_65
Messages postés
10
Date d'inscription
samedi 23 avril 2016
Statut
Membre
Dernière intervention
30 mai 2016
14 mai 2016 à 17:26
14 mai 2016 à 17:26
-le problème n°1 est réglé merci!
-pour le problème n°2 : j'ai des doublons dans l'onglet 4 (variation) dans la colonne D où il y a l'intitulé "SOLDE N-1" à partir de la ligne 222 . en fait il a recopier 2 fois les données de n-1
je cherche à importer sur la feuille 4, les COMPTE, INTITULE et SOLDE qui sont présent en feuille 3 et qu'il manque en feuille 4
le problème ce situe sur la même macro que la dernière fois
la ligne de commande dans vba est intitulé "Reprise des nouveaux comptes présents en N-1 et plus présents en N à la suite" en vert . je pense que le problème vient d'ici
cdt
jennifer
-pour le problème n°2 : j'ai des doublons dans l'onglet 4 (variation) dans la colonne D où il y a l'intitulé "SOLDE N-1" à partir de la ligne 222 . en fait il a recopier 2 fois les données de n-1
je cherche à importer sur la feuille 4, les COMPTE, INTITULE et SOLDE qui sont présent en feuille 3 et qu'il manque en feuille 4
le problème ce situe sur la même macro que la dernière fois
la ligne de commande dans vba est intitulé "Reprise des nouveaux comptes présents en N-1 et plus présents en N à la suite" en vert . je pense que le problème vient d'ici
cdt
jennifer
Frenchie83
Messages postés
2240
Date d'inscription
lundi 6 mai 2013
Statut
Membre
Dernière intervention
11 août 2023
337
14 mai 2016 à 17:42
14 mai 2016 à 17:42
Avez vous penser en premier lieu à effacer les précédentes données dans la feuille "VARIATION" avant toutes recopies. car les valeurs de la feuille "BALANCE N-1" s'arrête à la ligne 221, donc dans la feuille "VARIATION", tout ce qui est après la ligne 221 et qui existait auparavant est toujours maintenu. Effacez le contenu des feuilles C, D et E de la feuille "VARIATION" et relancez la macro, tout est correct.
jenny57_65
Messages postés
10
Date d'inscription
samedi 23 avril 2016
Statut
Membre
Dernière intervention
30 mai 2016
15 mai 2016 à 00:53
15 mai 2016 à 00:53
j'ai effacer le contenu des colonnes mais ça me fait les doublons quand même!
je vous ai mis en jaune dans la feuille variation tout ce qui ne devrait pas apparaître.
pour vérifier plus facilement vous pouvez vous baser sur les numéro de comptes en colonne A sur variation. ils sont triés dans l'ordre croissant et ils commencent pas le chiffre 1 à 7 .après la ligne 221 les numéros de comptes repassent à 1
la balance N-1 est recopiée en double.
https://www.cjoint.com/c/FEowZMLnT0H
dans la macro je dois avoir 3 commandes "principales":
1-importer la balance N en entier en feuille variation
2-importer uniquement les soldes de la balance n-1 en feuille variation dont les comptes sont déjà existant en feuille variation et les mettre sur la même ligne que les soldes N déjà inscrits
3-importer les comptes, les intitulés et les soldes de la balance n-1 en feuille variation qui sont manquant dans la feuille variation et les mettre sur la première ligne vide à la suite
je vous ai mis en jaune dans la feuille variation tout ce qui ne devrait pas apparaître.
pour vérifier plus facilement vous pouvez vous baser sur les numéro de comptes en colonne A sur variation. ils sont triés dans l'ordre croissant et ils commencent pas le chiffre 1 à 7 .après la ligne 221 les numéros de comptes repassent à 1
la balance N-1 est recopiée en double.
https://www.cjoint.com/c/FEowZMLnT0H
dans la macro je dois avoir 3 commandes "principales":
1-importer la balance N en entier en feuille variation
2-importer uniquement les soldes de la balance n-1 en feuille variation dont les comptes sont déjà existant en feuille variation et les mettre sur la même ligne que les soldes N déjà inscrits
3-importer les comptes, les intitulés et les soldes de la balance n-1 en feuille variation qui sont manquant dans la feuille variation et les mettre sur la première ligne vide à la suite
Frenchie83
Messages postés
2240
Date d'inscription
lundi 6 mai 2013
Statut
Membre
Dernière intervention
11 août 2023
337
15 mai 2016 à 05:22
15 mai 2016 à 05:22
Bonjour
Merci, avec l'exemple je comprends mieux.
Votre problème vient du fait que vous comparez 2 valeurs qui en apparence sont égales mais différentes pour excel. En effet lors du test d'égalité entre les N° de compte dans la boucle suivante:
N'oubliez pas de rajouter au début de code la ligne qui efface les anciennes données de la feuille "VARIATION":
Un conseil, évitez d'appeler les feuilles par leur numéro "sheets(2)", mettez plutôt leur nom "Sheets("BALANCE")", c'est plus simple pour l'analyse du code. Et pour éviter tout problème lié au majuscules et minuscules (car la aussi, VBA fait la distinction), saisissez en première ligne du module (au-dessus du titre de la première macro) la ligne suivante "Option compare text".
Voilà, bonne journée
Cdlt
Merci, avec l'exemple je comprends mieux.
Votre problème vient du fait que vous comparez 2 valeurs qui en apparence sont égales mais différentes pour excel. En effet lors du test d'égalité entre les N° de compte dans la boucle suivante:
For LIGNE_BALANCE_VARIATION = 7 To DERN_LIGNE_BALANCE_VARIATION If Sheets(4).Cells(LIGNE_BALANCE_VARIATION, 1).Value = Sheets(3).Cells(LIGNE_BALANCE_N1, 1).Value Then COMPTE_TROUVE = "OUI" NextSur la feuille "BALANCE N" et "BALANCE N-1" les n° de compte sont au format texte, alors que dans la feuille "VARIATION" ils sont au format standard. Ce qui fait que lors de la comparaison il n'y a jamais d'égalité, donc il recopie tout. Pour corriger le problème, soit vous mettez tout au même format soit vous modifier votre test en multipliant par 1 la deuxième condition, ce qui donne:
For LIGNE_BALANCE_VARIATION = 7 To DERN_LIGNE_BALANCE_VARIATION If Sheets(4).Cells(LIGNE_BALANCE_VARIATION, 1).Value = Sheets(3).Cells(LIGNE_BALANCE_N1, 1).Value * 1 Then COMPTE_TROUVE = "OUI" Next
N'oubliez pas de rajouter au début de code la ligne qui efface les anciennes données de la feuille "VARIATION":
Sheets("VARIATION").Range("A7:E" & [A10000].End(xlUp).Row).ClearContents.
Un conseil, évitez d'appeler les feuilles par leur numéro "sheets(2)", mettez plutôt leur nom "Sheets("BALANCE")", c'est plus simple pour l'analyse du code. Et pour éviter tout problème lié au majuscules et minuscules (car la aussi, VBA fait la distinction), saisissez en première ligne du module (au-dessus du titre de la première macro) la ligne suivante "Option compare text".
Voilà, bonne journée
Cdlt
jenny57_65
Messages postés
10
Date d'inscription
samedi 23 avril 2016
Statut
Membre
Dernière intervention
30 mai 2016
15 mai 2016 à 09:41
15 mai 2016 à 09:41
bonjour,
effectivement j'ai changé le format ça fonctionne beaucoup mieux.
il ne m'a pas repris en double la balance N-1 c'est bon .
par contre il ne me recopie pas en intégralité la dernière ligne de la BALANCE N-1 (ligne 205 surligné en jaune) sur la feuille VARIATION (ligne 245 surligné en jaune) . il fait un blocage sur la dernière ligne de la BALANCE N-1 il ne me récupère que le solde et pas le COMPTE et INTITULE
https://www.cjoint.com/c/FEphNjhnGFH
cdt
effectivement j'ai changé le format ça fonctionne beaucoup mieux.
il ne m'a pas repris en double la balance N-1 c'est bon .
par contre il ne me recopie pas en intégralité la dernière ligne de la BALANCE N-1 (ligne 205 surligné en jaune) sur la feuille VARIATION (ligne 245 surligné en jaune) . il fait un blocage sur la dernière ligne de la BALANCE N-1 il ne me récupère que le solde et pas le COMPTE et INTITULE
https://www.cjoint.com/c/FEphNjhnGFH
cdt
Frenchie83
Messages postés
2240
Date d'inscription
lundi 6 mai 2013
Statut
Membre
Dernière intervention
11 août 2023
337
15 mai 2016 à 10:57
15 mai 2016 à 10:57
il ne me recopie pas en intégralité la dernière ligne de la BALANCE N-1 (ligne 205 surligné en jaune) FAUX, c'est en ligne 221.
Pour le reste, vous recopier systématiquement la valeur (Solde N ou Solde N-1) à la suite, si le compte n'est pas trouvé il conserve la ligne avec le compte et le libellé, sinon il continu la boucle, donc en fin de programme vous avez toujours 1 ligne d'avance sans compte ni libellé, il faut donc effacer cette ligne si le compte et le libellé sont vides.
https://www.cjoint.com/c/FEpiZfzY8Qw
Cdlt
Pour le reste, vous recopier systématiquement la valeur (Solde N ou Solde N-1) à la suite, si le compte n'est pas trouvé il conserve la ligne avec le compte et le libellé, sinon il continu la boucle, donc en fin de programme vous avez toujours 1 ligne d'avance sans compte ni libellé, il faut donc effacer cette ligne si le compte et le libellé sont vides.
https://www.cjoint.com/c/FEpiZfzY8Qw
Cdlt
jenny57_65
Messages postés
10
Date d'inscription
samedi 23 avril 2016
Statut
Membre
Dernière intervention
30 mai 2016
15 mai 2016 à 11:26
15 mai 2016 à 11:26
oui !! merci pour les explications . tout fonctionne !!
merci beaucoup ! :)
bonne journée,
jennifer
merci beaucoup ! :)
bonne journée,
jennifer
jenny57_65
Messages postés
10
Date d'inscription
samedi 23 avril 2016
Statut
Membre
Dernière intervention
30 mai 2016
30 mai 2016 à 21:38
30 mai 2016 à 21:38
bonjour,
j'ai eu 17/20 à mon oral et mon mémoire! du coup j'ai obtenu ma licence avec mention
encore merci pour votre aide!
bonne continuation
cdt
j'ai eu 17/20 à mon oral et mon mémoire! du coup j'ai obtenu ma licence avec mention
encore merci pour votre aide!
bonne continuation
cdt
Frenchie83
Messages postés
2240
Date d'inscription
lundi 6 mai 2013
Statut
Membre
Dernière intervention
11 août 2023
337
31 mai 2016 à 04:10
31 mai 2016 à 04:10
Bonjour
EXCELlent! Félicitations et bonne chance pour la suite de vos projets.
Cordialement
EXCELlent! Félicitations et bonne chance pour la suite de vos projets.
Cordialement
24 avril 2016 à 12:18
je viens d'essayer et cela me donne le même résultat. j'ai toujours un doublon. en fait il me reprend l'intégralité de ma feuille 3 . il n'exclut pas les données qui sont identiques à la feuille 4
cdt