afficher ou masquer une ligne sous conditions

olivemotard

XLDnaute Junior
Bonjour a tous

Que de demandes d'aide de ma part en ce moment, j'avais laissé excel de coté faute d'emploi, et maintenant que j'y reviens je suis rouillé .... :D

Ma Macro est semble il toute simple mais ne fonctionne pas...

Le principe :
Sur ma feuille "Panier" les lignes 13 à 51 sont masquées par defaut
Lorsque je lance ma macro qui améne a la feuille "Panier", celle ci vérifie que sur la "Feuil2" la cellule A2 contient une info, si tel est le cas, elle rend la ligne 13 de "Panier" visible
(Panier B13 = Feuil2 A2 > je ne peux donc pas lui demander de vérifier que B13 contien t une info puisqu'elle contient le lien)
Si A2 est vide, B13 reste masquée.

Voici mon code :
Code:
Sub cacher_lignes_vides()

Application.ScreenUpdating = False

Sheets("Feuil2").Select
If Range("A2") <> "" Then

Sheets("Panier").Select
Rows("13").Select
Selection.EntireRow.Hidden = False
Else
Selection.EntireRow.Hidden = True
Sheets("Panier").Select
End If
End Sub

Ce code est sous la feuille "panier"

Merci d'avance a tous pour votre aide si précieuse (en toute sincérité et sans jouer les lèche bottes)

Olivier
 

ERIC S

XLDnaute Barbatruc
Re : afficher ou masquer une ligne sous conditions

Bonjour

a essayer (hidden = caché) de plus rétablir la mise à jour écran (ou enlever le gel écran si cela n'a pas d'intérêt)

Sub cacher_lignes_vides()
Application.ScreenUpdating = False
If Sheets("feuil2").Range("A2") = "" Then
Sheets("Panier").Select
Rows("13").Select
Selection.EntireRow.Hidden = False
Else
Selection.EntireRow.Hidden = True
Sheets("Panier").Select
End If
Application.ScreenUpdating = False
End Sub
 

Hulk

XLDnaute Barbatruc
Re : afficher ou masquer une ligne sous conditions

Hello,

Pas sûr d'avoir bien compris, essaie ça.
Code:
Application.ScreenUpdating = False

Sheets("Feuil2").Select

If Range("A2") <> "" Then
    Sheets("Panier").Rows("13").EntireRow.Hidden = False
Else
    Rows("13").EntireRow.Hidden = True
End If
A tester.

P.S. Moins il y a de Select, mieux c'est !

EDIT : Idem, bonjour à tous :)
 
Dernière édition:

Robert

XLDnaute Barbatruc
Repose en paix
Re : afficher ou masquer une ligne sous conditions

Bonjour Olive, bonjour le forum,

Peut-être comme ça :
Code:
Sheets("Panier").Rows(13).Hidden = IIf(Sheets("Feuil2").Range("A2") = "", True, False)

Édition :

Salut Hulk on s'est croisé.

Oooops j'avais pas vu Eric... Bonjour à toi aussi !
 
Dernière édition:

olivemotard

XLDnaute Junior
Re : afficher ou masquer une ligne sous conditions

Merci a tous pour votre aide, j'ai essayé vos trois propositions mais aucune ne fonctionne
Ma ligne 13 reste masquée....

Si vous avez d'autres idées...

Je vais essayer de trouver un autre chemin, je vous tiens au courant dans la journée

Bonne aprés midi
 

Hulk

XLDnaute Barbatruc
Re : afficher ou masquer une ligne sous conditions

Re,

Essaie en inversant True et False.

Aussi, au risque de passer pour l'âne, j'avoue ne pas bien saisir ceci.
(Panier B13 = Feuil2 A2 > je ne peux donc pas lui demander de vérifier que B13 contien t une info puisqu'elle contient le lien)
Peut-être mieux expliquer ton souci.
 

olivemotard

XLDnaute Junior
Re : afficher ou masquer une ligne sous conditions

Oui, j'ai des fois des cheminemants un peu "scabreux"

En fait c'est un catalogue interne

les utilisateurs se proménent sur le catalogue double clic sur les articles souhaités > chaque double clic copie les cellules et les colles en "Feuil2"
A2 A3, ...ainsi de suite jusqu'à 20 lignes et ensuite message d'alerte quota dépassé.

Le probléme est que si la personne continue de choisir des articles les articles se mettent a la suite même si le quota est dépassé.

Donc si cette page était mon bon de commande ils pourraient tout envoyer.

J'ai donc créer la feuille "Panier" qui a des liaisons vers les 20 lignes de ma "Feuil2" > sous cette forme > =Feuil2!A2

Cela autorise l'envoi de 20 lignes maxi.

Mais je voudrais que sur ma feuille panier qui est prévue pour 20 lignes n'apparaisse que celle qui sont remplies > hors elle sont toutes remplies puisqu'elles contiennent une liaison avec la "Feuil2".

Je demande donc a ma macro d'aller voir s'il y a quelquechose sur ma "Feuil2" et si oui, comme c'est en liaison, de laisser apparaitre la ligne correspondante sur "Panier".

Je ne suis pas sur d'avoir été plus clair, si tu a besoin de d'autres info

Pour la macro, pour le moment je cherche encore mais la je pèche....

merci d'avance
 

Robert

XLDnaute Barbatruc
Repose en paix
Re : afficher ou masquer une ligne sous conditions

Bonjour le fil, bonjour le forum,

Comment ça ça fonctionne pas ! Regarde la pièce jointe. Tape une valeur dans A2 de l'onglet Feuil2 et lance la macro. Efface la valeur et relance la macro... Ça fonctionne ou pas ?
 

Pièces jointes

  • Olive_01.xls
    23 KB · Affichages: 300

olivemotard

XLDnaute Junior
Re : afficher ou masquer une ligne sous conditions

WOW, il a fallu couper sévère .... il reste plus grand chose de mon fichier:eek:
Sue la feuille environnement atelier > double cliquer sur les check box pour ajouter a la commande
cela copie les deux cellules de droite sur la feuil2
et normalement quand on clique sur le chariot, on arrive sur panier et la ligne correspondante est decouverte.

Mais la......?
 

Pièces jointes

  • catalogue outillage test1.zip
    43.6 KB · Affichages: 146

olivemotard

XLDnaute Junior
Re : afficher ou masquer une ligne sous conditions

A ne rien y comprendre !!!
Sur le fichier que j'ai mis en ligne lorsque vous cliquez sur le chariot, la macro ne s'éxécute pas.
J'ai pris la même icone vierge de toute macro, je la place en feuil2, je lui affecte la meme macro, je la coupe et la colle a la place de l'autre et la, ca fonctionne.

Merci a tous car c'est grace a vous que j'ai mon résultat et c'est l'essentiel.
Mais si quelqu'un avait une explication, je suis prenneur

Comment est ce possible que la meme macro est deux comportements ?
Est ce que mon icone pouvait etre affectée par les macros précédentes ?

Merci d'avance a tous
 

Discussions similaires

Statistiques des forums

Discussions
311 729
Messages
2 081 974
Membres
101 854
dernier inscrit
micmag26