Macro avec condition si et deux arguments

Fermé
prisme78 Messages postés 2 Date d'inscription mercredi 8 janvier 2014 Statut Membre Dernière intervention 22 janvier 2014 - 22 janv. 2014 à 15:12
dlt-pan Messages postés 481 Date d'inscription jeudi 17 mai 2007 Statut Membre Dernière intervention 23 décembre 2014 - 22 janv. 2014 à 15:30
Bonjour,

N'ayant pas obtenu de réponse, je vais essayer de reformuler ma demande.
j'ai écrit une macro qui affiche ou n'affiche pas des images ou des graphiques en fonction du choix dans une boite de dialogue.
If Range("choix") = 1 Then
ActiveSheet.Shapes.Range(Array("nom")).Visible = msoTrue
ActiveSheet.ChartObjects("nom").Visible = True
ActiveSheet.Shapes.Range(Array("nom")).Visible = msoFalse
If Range("choix") = 2 Then
ActiveSheet.Shapes.Range(Array("nom")).Visible = msoFalse
ActiveSheet.ChartObjects("nom").Visible = False
ActiveSheet.Shapes.Range(Array("nom")).Visible = msoTrue
etc, etc....

Ce que je souhaiterais, c'est de ne pas afficher ces images ou graphiques si la valeur d'une cellule est vide, comment passer cet argument au niveau de ma macro qui pourrait être
Si le choix =x et et si nom_cellule = vide ou 0 alors ne pas afficher
si non vide alors afficher les élémenst correspondants

Merci à tous et toutes

A voir également:

1 réponse

dlt-pan Messages postés 481 Date d'inscription jeudi 17 mai 2007 Statut Membre Dernière intervention 23 décembre 2014 67
Modifié par dlt-pan le 22/01/2014 à 15:31
bonjour,
essaye ceci :
If Range("choix") = 1 and cells(ligne,colonne) = "" Then
ActiveSheet.Shapes.Range(Array("nom")).Visible = msoTrue
ActiveSheet.ChartObjects("nom").Visible = False
ActiveSheet.Shapes.Range(Array("nom")).Visible = msoFalse
else
ActiveSheet.Shapes.Range(Array("nom")).Visible = msoFalse
ActiveSheet.ChartObjects("nom").Visible = true
ActiveSheet.Shapes.Range(Array("nom")).Visible = msoTrue
end if
etc, etc....



Ce que l'on conçoit bien s'énonce clairement,
Et les mots pour le dire arrivent aisément.
0