VBA maxi débutant
Résolu
FIFU
-
FIFU -
FIFU -
Bonjour à tous,
Je précise d'entrée que je suis un gros noob de VBA, ça c'est fait... donc expliquez moi pas à pas SVP.
Après avoir passé plusieurs heures à chercher le moyen d'arriver à mes fins, force est de constater que je ne suis pas plus avancé q'au début de mes recherches.
Je souhaite créer une macro qui me permette si une cellule est vide de cacher 2 colonnes d'un tableau
Ex : si D5 est vide alors cacher E5:E37 et D5:D37 sachant que D5 corrspond à une formule Index equiv "=+SI(ESTERREUR(INDEX($E$48:$E$82;EQUIV($D$4;$F$48:$F$82;0);0));"";INDEX($E$48:$E$82;EQUIV($D$4;$F$48:$F$82;0);0))" (je ne sais pas si ça peut poser pb)
Je souhaite également pouvoir recopier cette formule pour l'appliquer à d'autres colonnes.
Je précise que j'ai crée un menu déroulant en A3 qui me permet de calculer les données du tableau suivant cette variable et donc je cherche simplement à cacher les colonnes qui seront vides suivant la variable A3.
Merci de votre aide,
FIFU
Je précise d'entrée que je suis un gros noob de VBA, ça c'est fait... donc expliquez moi pas à pas SVP.
Après avoir passé plusieurs heures à chercher le moyen d'arriver à mes fins, force est de constater que je ne suis pas plus avancé q'au début de mes recherches.
Je souhaite créer une macro qui me permette si une cellule est vide de cacher 2 colonnes d'un tableau
Ex : si D5 est vide alors cacher E5:E37 et D5:D37 sachant que D5 corrspond à une formule Index equiv "=+SI(ESTERREUR(INDEX($E$48:$E$82;EQUIV($D$4;$F$48:$F$82;0);0));"";INDEX($E$48:$E$82;EQUIV($D$4;$F$48:$F$82;0);0))" (je ne sais pas si ça peut poser pb)
Je souhaite également pouvoir recopier cette formule pour l'appliquer à d'autres colonnes.
Je précise que j'ai crée un menu déroulant en A3 qui me permet de calculer les données du tableau suivant cette variable et donc je cherche simplement à cacher les colonnes qui seront vides suivant la variable A3.
Merci de votre aide,
FIFU
A voir également:
- VBA maxi débutant
- Maxi compte - Télécharger - Comptabilité & Facturation
- Logiciel de programmation pour débutant - Guide
- Logiciel montage vidéo débutant - Guide
- Excel compter cellule couleur sans vba - Guide
- Vba ouvrir un fichier excel avec chemin ✓ - Forum VB / VBA
5 réponses
Bonjour,
voici ce que tu demandes :
'Si D5 est vide
if d5 = "" then
'cacher tes colonnes D et E
range(columns(4),columns(5)).select
Selection.EntireColumn.Hidden = True
else
'si d5 n'est pas vide
range(columns(4),columns(5)).select
Selection.EntireColumn.Hidden = True
end if
un conseil : copie ce code et appuie sur F8, ca te permettra de comprendre et au lieu de mettre d5, tu peux faire ca
'i ligne
' j ligne
i=5
j=4
cells(i,j).select
voici ce que tu demandes :
'Si D5 est vide
if d5 = "" then
'cacher tes colonnes D et E
range(columns(4),columns(5)).select
Selection.EntireColumn.Hidden = True
else
'si d5 n'est pas vide
range(columns(4),columns(5)).select
Selection.EntireColumn.Hidden = True
end if
un conseil : copie ce code et appuie sur F8, ca te permettra de comprendre et au lieu de mettre d5, tu peux faire ca
'i ligne
' j ligne
i=5
j=4
cells(i,j).select
OK mais il semble qu'il y ait un pb car quand je tate du F8 pour vérifier, que D5 soit vide ou contienne une valeur, cela me cache les 2 colonnes quand même...
bonjour, je me permet de mettre mon grain de sel.. ;)
if d5 = "" then => if range("D5) ="" then... ou if cells(5,4)="" then.... serait mieux ;)
if d5 = "" then => if range("D5) ="" then... ou if cells(5,4)="" then.... serait mieux ;)
De plus..
'si d5 n'est pas vide
range(columns(4),columns(5)).select
Selection.EntireColumn.Hidden = false ' pour les faire réapparaitre ;)
'si d5 n'est pas vide
range(columns(4),columns(5)).select
Selection.EntireColumn.Hidden = false ' pour les faire réapparaitre ;)
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question