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

Intégration de nouvelles commandes sans les doublons

  • Initiateur de la discussion Initiateur de la discussion KIM
  • 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 !

KIM

XLDnaute Accro
Bonjour les ami(e)s, bonjour le forum,
Grâce à vous, et je vous en remercie, j'utilise une macro que j'adapte selon mes besoins.
Dans le fichier joint, la macro regroupe les commandes de la feuille "Transferts" qui ont le même numéro de commandes dans la feuille "Base_W" et fait la somme du TPU (col O feuil Transferts".
Quand je rajoute de nouvelles commandes dans la Feuil "Transfert", la macro regroupe toutes les commandes dans la feuil "Base_W" même si des commandes existent déjà.
J'ai besoin de votre aide pour ne regrouper que les nouvelles commandes dont le numéro n'existe pas dans la feuil "Base_W", col C.
Merci d'avance
Amicalement
KIM
 

Pièces jointes

Re : Intégration de nouvelles commandes sans les doublons

Bonjour Kim et le forum,


Il fallait simplement supprimer les résultats précédents.

Cordialement

Bernard
 

Pièces jointes

Re : Intégration de nouvelles commandes sans les doublons

Bonjour CBernardT et le Forum,
Merci de ta réponse rapide. Suite à ta réponse, j'ai oublié une information très importante et je m'en excuse. Je ne peux pas supprimer les résultats précédents car il y des saisies manuelles dans les colonnes G à N de la feuille Base_W. Le fait est que Après avoir regroupé les commandes dans Base_W, d'autres informations qui correspondent à ces commandes et qui n'existent pas dans la feuil "Transferts" sont saisies. Voilà mon problème.
merci d'avance de votre aide
amicalement
KIM
 
Re : Intégration de nouvelles commandes sans les doublons

Salut Kim
Bonjour le Fil
Bonjour le Forum

arff je vois Kim que tu tires au maximum Profit de ce très puissant outil qu'est excel(VBA) et bravo

je pense qu'il faut avant de coller les données passer en revue la colonne C de la feuille Base_W avec celle du tableau qui comprend les N°CDE
je regarderai cela , si Bernard ne trouve pas de solution

Bonne journée
 
Re : Intégration de nouvelles commandes sans les doublons

Salut ChTi160,
Re CBernardT et le Forum

Content de te revoir et vous remercie tous de l'aide et de votre réactivité dans ce forum.
Beaucoup comme moi en profite. Merci
KIM
 
Re : Intégration de nouvelles commandes sans les doublons

Re Kim,

Bonjour ChTi160,

J'ai strictement suivi les recommandations judicieuses de Jean Marie;

Cordialement

Bernard
 

Pièces jointes

Re : Intégration de nouvelles commandes sans les doublons

Re, Bernard, Jean marie et le forum,
Merci Bernard, la macro répond exactement à ma demande, je vais essayer de l'intégrer dans le fichier en exploitation.
Si tu as une minute, peux-tu me commenter tes modifs ?
Merci d'avance
Amicalement
KIM
 
Re : Intégration de nouvelles commandes sans les doublons

Re Kim,

Comme le disais Jean Marie, avant de coller les données, une boucle sur les N° CDE déjà saisis dans la colonne C de la feuille Base_W avec celle du tableau permet d'éviter de coller l'enregistrement en traitement.

With Ws_Cible ' Feuille de la base_W
' Recherche de la dernière ligne de la base
DerLigne = .Range("B65536").End(xlUp).Row
N = 1 ' Cette variable permet d'aller à la ligne suivante à chaque enregt
For i = 1 To UBound(TabResult, 1) 'Boucle sur les enrgt de TabResult
If Application.CountIf(Range(.Cells(3, 3), .Cells(DerLigne, 3)), TabResult(i, 3)) = 0 Then ' Contrôle de l'absence d'un N° CDE identique
For j = 1 To 6 ' Boucle sur les colonnes de l'enrgt
.Cells(DerLigne + N, j) = TabResult(i, j)
Next j
N = N + 1 ' Compteur de ligne
End If
Next i
Application.Intersect(.UsedRange, .Range("A:A")).NumberFormat = "d-mmm"
.Calculate
End With

Cordialement

Bernard
 
Re : Intégration de nouvelles commandes sans les doublons

Bonsoir Kim ,Bernard

bien que la solution de Bernard soit top Lol
je me suis permis (j'avais pensé a cette fonction Countif et aussi la méthode Find )
Mais pour rester dans le ton lol

j'ai modifié le code de Bernard pour optimiser (enfin je pense Lol), moins de boucle et de vérifications

je fais la vérification (countif) à l'entrée de la donnée dans la collection
enfin voir le code et commentaires
Merci Bernard

Le Fichier : Regarde la pièce jointe BaseMAJsansdoublons_V2.1.zip

Bonne fin de Soirée
 
Re : Intégration de nouvelles commandes sans les doublons

Bonsoir Jean Marie, Bernard et le Forum,
Je viens de lire avec ma grande surprise le dernier message message de Jean Marie daté du 22/10/2008. Avec mes excuses JM, Je n'ai pas reçu de notification.
Je vais tester ton code Jean Marie car car j'ai un problème avec le dernier code de Bernard du 22/10/2008 17h42. Effectivement Bernard, quand il y a moins de 100 lignes, la comparaison des num des commandes se déroule rapidement. et actuellement avec plus de 400 lignes le temps d'exécution est tres long et l'ordi pédale à 100%.
Je vais tester ton code JM et vous tiendrai au courant du temps d'exec.
Merci d'avance
Bien amicalement
KIM
 
Re : Intégration de nouvelles commandes sans les doublons

Bonsoir Jean Marie, Bernard et le Forum,
@JeanMarie,
J'ai testé ta version. Elle est plus rapide de celle de Bernard. Parcontre J'ai galéré car dans le résultat je retrouve des doublons c-a-d des commandes qui existaient déjà et je n'ai pas compris pourquoi. Je n'ai rien modifié dans le code j'ai simplement effacé complétement la feuille Base_W pour que cela fonctionne correctement. Je n'ai pas compris!
Peux-tu STP m'expliquer pourquoi tu fais du "Transpose"? y-a-til possibilité de contourner ce "Transpose" en ayant une logique de ligne?
@Bernard,
J'ai assimilé ton code mais j'ai des soucis d'execution car il bloque l'ordi.

Merci de votre aide
Bien amicalement
KIM
 
Re : Intégration de nouvelles commandes sans les doublons

Salut Kim
Bonjour le fil
Bonjour le Forum

content de te retrouver sur ce fil

je vais aller voir le fichier , car cela remonte Lol
je ne comprends pas trop ces deux phrases ,peux tu m'expliquer ,

1° Pourquoi tu fais du "Transpose"? y-a-t il possibilité de contourner ce "Transpose" en ayant une logique de ligne ? (qu'entends tu)
2° J'ai assimilé ton code mais j'ai des soucis d'exécution car il bloque l'ordi.(quel message)je viens de me rendre compte que cette demande est adressée à Bernard Lol

peux tu me mettre un exemple de doublon,car il ce peut que les codes ne soient pas , malgré les apparences , Identiques (espaces en début ou fin ???)

dans l'attente je vais aller voir le fichier
Bonne journée
 
Dernière édition:
Re : Intégration de nouvelles commandes sans les doublons

Salut JeanMarie, Bonjour bernard et le forum,
@Jeanmarie,
J'utilise actuellement le dernier code de Bernard du 22/10/2008 17h42. Au début le fichier avait moins de 100 lignes, la comparaison des num des commandes se déroulait rapidement. mais maintenant avec plus de 400 lignes le temps d'exécution est tres long et l'ordi pédale à 100%, le résultat est correct mais après plus de 20min sur un poste de 2Go de RAM. Merci à Bernard s'il peut faire qque chose pour accélerer l'exec.

Ton dernier code est plus rapide. Il m'a généré des doublons mais c'est réglé car j'ai vidé la feuille Base_W et j'ai relancé la macro et le resultat est correct sans rien comprendre.
Dans la macro tu utilises Application.Transpose(TabResult) pour coller le tableau en inversant les colonnes. Peut-on faire autrement?
Merci d'avance
Amicalement
KIM
 
Re : Intégration de nouvelles commandes sans les doublons

Re Kim

tu dois savoir depuis le temps Lol ,que j'utilise des Tableaux ,pour récupérer les données (cela est plus rapide)
qu'est ce qui te pose problème avec cette méthode ????
mais je vais regarder ce que je peux faire

Bonne fin de Journée
 
- 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

Discussions similaires

Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…