Fusion de lignes sur excel

Fusion de lignes sur excel - VB/VBA/VBS - Programmation

Marsh Posté le 06-06-2016 à 10:03:06    

Bonjour bonjour!
 
Je suis en train d'écrire une macro sur un logiciel mais c'est du Vb, et j'ai une partie d'extraction de données vers un fichier Excel.
Dans mes données, je me suis rendu compte que certaines lignes étaient répétées sans raison apparente car les données étaient exactement les mêmes.
 
Je souhaiterais donc rajouter une condition pour dire que si 2 lignes sont identiques, alors n'en écrire qu'une seule.
 
Comment dois-je procéder?
If row(i+1) = row(i) then  
   ???
End if
?
 
Cordialement
Nicolas

Reply

Marsh Posté le 06-06-2016 à 10:03:06   

Reply

Marsh Posté le 09-06-2016 à 14:11:20    

je te donne juste une idée dans la mesure où je ne sais dans quelle position se trouve ton bout de code.
 
1. Crée une fonction de type "Boolean" qui prend en paramètres le numero de ligne (i= integer ou Double selon la taille de ta base) :
      Function Doublure( NumLigne As Integer) as Boolean
cette fonction Renverra Vrai si les ligne i et i+1 sont identiques. La vérification se fera cellule par cellule, car je ne connais pas de fonction qui compare directment 2 lignes.
 
2. Tu supprimes la ligne i+1 si la fonction Doublure renvoie Vrai. Donc ce cas, i prendra i-1 pour apprendre en compte les cas où plusieurs lignes successives sont identiques (pour supprimer tous les doublons, c'est un peu plus complexe :pt1cable: )
 
Outils: For...Next  et If... EndIf !  
 
Try it.  

Reply

Marsh Posté le 10-06-2016 à 15:31:34    

Bonjour,
 
tu devrais pouvoir utiliser la fonction d'excel de suppression des doublons avant de lancer ton traitement.
 
cdt,


---------------
il s'appel le ronge me doute
Reply

Marsh Posté le 13-06-2016 à 14:00:37    

Merci Arl Guhr,
 
Cette fonction d'Excel est exactement ce que je cherchais!
 
Cdlt

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed