Macro somme doublmon et suppression lignes vi

argaz01 -  
 argaz01 -
Bonjour,

Quelqu'un peut-il me dire pourquoi le code intégré dans le fichier ci-joint ne produit rien: En effet, j'aimerais que mon code supprime les lignes vides et fasse la somme des doublons:
http://www.cijoint.fr/cjlink.php?file=cj201006/cijaatMnFP.xls

D'avance merci

Cordialement

A voir également:

8 réponses

chossette9 Messages postés 6855 Date d'inscription   Statut Contributeur Dernière intervention   1 312
 
Bonjour,

testé sous Office 2010, aucun problème ça s'exécute parfaitement !

Cordialement.
0
argaz01
 
Mais pourquoi ça ne marche chez moi (office 2003)? est-ce que le code pour faire la somme des doublons est le bon?

Cordialement
0
chossette9 Messages postés 6855 Date d'inscription   Statut Contributeur Dernière intervention   1 312
 
Apparemment le code est bon oui, mais quel est ton problème ? Que le code ne fonctionne pas du tout ? Ou bien que tu voudrais qu'il se lance automatiquement à l'ouverture, ou quelque chose dans le même genre?
0
argaz01
 
En fait, quant j'utilise F8 pour exécuter le code pas à pas, la bande jaune ne passe pas sur toutes les lignes dudit code et surtout celle de end sub, ce qui fait que je ne peux pas passer à l'autre code! et puis le code ne donne rien du tout!

sos!

Cordialement
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
chossette9 Messages postés 6855 Date d'inscription   Statut Contributeur Dernière intervention   1 312
 
Ta première fonction est très longue à tester, tu as mis for n=3000 to 1, c'est extrêmement long !! C'est surement pour ça que tu penses que ça ne donne rien du tout.

Au lieu de le lancer ligne par ligne, exécute le code en entier, sans pas à pas, et tu verras que ça fonctionne, même s'il faut patienter.

Cordialement.
0
argaz01
 
Quand j'exécute le code avec F5 ça supprime les lignes vides, mais les doublons restent! c'est que le code pour faire la somme des doublons ne fonctionne pas!non?
Concernant la ligne
For n = 3000 To 1 Step -1
comment faire plus simple et plus court?

merci
0
chossette9 Messages postés 6855 Date d'inscription   Statut Contributeur Dernière intervention   1 312
 
Pour la ligne For je ne vois pas trop comment faire.

Si tu veux lancer la deuxième routine après la première, il faut que tu l'appelles dans la première. C'est-à-dire que juste avant le End Sub de ta première routine, écrire le nom de la deuxième. Ce qui donne :
Application.ScreenUpdating = False 
For n = 3000 To 1 Step -1 
If Range("A" & n) = "" Then Rows(n).Delete 
Next n 
Application.ScreenUpdating = True 
SommeDoublonsAMF 
End Sub


Par contre ta 2e fonction ne fonctionne pas. Ce qui semble nomal vu que tu testes que les Catégories d'une ligne et le ratio de cette ligne soient égaux aux données de la ligne d'en dessous. Or ceci n'est jamais vrai dans ce que tu as mis en ligne. Donc forcément cela ne fait jamais la somme.

Ce mec la n'était pas une lumière, car il était niais.
0
argaz01
 
Merci chossette9 pour ton aide, et effectivement la 2ème macro ne fonctionne pas, peut-être dois-je cherché une autre façon de faire.

Cordi@lement
0