Macro de somme

manoelinho Messages postés 46 Statut Membre -  
Patrice33740 Messages postés 8931 Date d'inscription   Statut Membre Dernière intervention   -
Bonjour,

voici mon probleme,

J'ai un tableau composé d'un certain nombre de lignes (numéro de compte) et de colonnes (années).

Le problème est que certains comptes n'ont pas de données avant 2012 et donc sont pour le moment vides. Ce qui fait que les lignes de ces comptes sont vides. Mon manager ne veut pas que ces lignes apparraissent lors de l'impression.
J'aimerai donc faire une macro qui me permette de faire la somme de la ligne et de la masquer si celle ci a une somme nule.

Le systeme que j'utilse pour le moment est une condition.

F17 est la cellule pour la ligne de compte "investissement au UK"et pour la colonne "année 2010". si F17 est nul alors je masque la ligne

Probleme:
Pour cette ligne ( ligne 17), je n'est pas de valeurs de 2005 à 2010 mais j'en aurais peut etre en 2011. Si j'ai la moindre valeur sur cette ligne, elle doit apparaitre.
Du coup je ne peux pas passer d'écriture ordonnant de masquer automatiquement cette ligne.
Il me faut une condition.
Je ne peux pas passer d'écriture en macro demandant de tenir compte que d'une seule cellule de cette ligne, car si il y a eu des valeurs en 2009 il faut que la ligne apparaisse.

Du coup le mieux serait de faire une macro qui dirait.
si la somme de la ligne 17 est nule ( autrement dit si tout les cellules de la ligne 17 sont vides, alors je masque la ligne.

J'espere que mon message est assez clair.

merci davance de votre aide
A voir également:

2 réponses

pijaku Messages postés 13513 Date d'inscription   Statut Modérateur Dernière intervention   2 770
 
Bonjour,
Plutôt que la somme des valeurs de la ligne 17, somme qui peux engendrer des erreurs en cas de présence de texte dans la ligne, pourquoi ne pas utiliser l'équivalant de la fonction NBVAL() d'Excel. Cette fonction va nous donner le nombre de cellule qui ne sont pas vide dans la ligne. Si aucune cellule n'est remplie, le résultat est zéro.
Donc essayez le test :
If WorksheetFunction.CountA(Rows(17)) = 0 Then Rows(17).Hidden = True
0
Patrice33740 Messages postés 8931 Date d'inscription   Statut Membre Dernière intervention   1 782
 
Bonjour,

J'aimerai donc faire une macro qui me permette de faire la somme de la ligne et de la masquer si celle ci a une somme nulle.

Pourquoi n'utilises-tu pas tout simplement un filtre pour masquer les lignes concernées ?

Patrice
0