Macro Excel - Masquer certaines lignes
Résolu
cdlmars5
Messages postés
2
Date d'inscription
Statut
Membre
Dernière intervention
-
cdlmars5 Messages postés 2 Date d'inscription Statut Membre Dernière intervention -
cdlmars5 Messages postés 2 Date d'inscription Statut Membre Dernière intervention -
Bonjour à tous
je suis novice en macro excel et j'ai un soucis. En fait, j'ai un metré et j'aimerais masquer/afficher certaines lignes.
Le metré comportant presque 1000 lignes, je n'ai pas envie de déclarer chaque ligne à masquer en fonction de sa valeur et je me suis dit que créer une colonne A avec une fonction en formule pour les lignes qui m'intéressent devraient fonctionner.
Seulement, ça ne fonctionne pas, et je ne vois pas pourquoi :S.
et dans les celulles en colonne A, je mets
le problème étant qu'en cellule A, il me met un résultat de 0 (car G398 est =0).
Il affiche correctement le n° de la ligne dans la MsgBox. Mais ne masque pas la cellule.
je suis novice en macro excel et j'ai un soucis. En fait, j'ai un metré et j'aimerais masquer/afficher certaines lignes.
Le metré comportant presque 1000 lignes, je n'ai pas envie de déclarer chaque ligne à masquer en fonction de sa valeur et je me suis dit que créer une colonne A avec une fonction en formule pour les lignes qui m'intéressent devraient fonctionner.
Seulement, ça ne fonctionne pas, et je ne vois pas pourquoi :S.
Public Function Masquage(ByVal Ligne As Integer) Range("A" & Ligne).EntireRow.Hidden = True MsgBox Ligne End Function
et dans les celulles en colonne A, je mets
=SI(G398=0;Masquage(LIGNE());"")
le problème étant qu'en cellule A, il me met un résultat de 0 (car G398 est =0).
Il affiche correctement le n° de la ligne dans la MsgBox. Mais ne masque pas la cellule.
A voir également:
- Macro Excel - Masquer certaines lignes
- Telecharger macro convertir chiffre en lettre excel - Télécharger - Tableur
- Liste déroulante excel - Guide
- Aller à la ligne excel - Guide
- Word et excel gratuit - Guide
- Déplacer colonne excel - Guide
2 réponses
bonjour
je crois que ton problème vient du fait que l'objet d'une "function" est de renvoyer un résultat, elle ne peut pas modifier l'aspect de la feuille
il te faudra créer une "sub" et dététerminer quel évènement va déclencher son exécution
un exemple à activer avec un raccourci clavier masque la ligne de la cellule active
bonne suite
je crois que ton problème vient du fait que l'objet d'une "function" est de renvoyer un résultat, elle ne peut pas modifier l'aspect de la feuille
il te faudra créer une "sub" et dététerminer quel évènement va déclencher son exécution
un exemple à activer avec un raccourci clavier masque la ligne de la cellule active
Public Sub masquer() With ActiveCell .EntireRow.Hidden = True End With End Sub
bonne suite