IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Macros et VBA Excel Discussion :

cacher une ligne sur le tableur


Sujet :

Macros et VBA Excel

  1. #1
    Nouveau membre du Club
    Inscrit en
    Juin 2007
    Messages
    50
    Détails du profil
    Informations forums :
    Inscription : Juin 2007
    Messages : 50
    Points : 25
    Points
    25
    Par défaut cacher une ligne sur le tableur
    Salut tout le monde

    Je suis un bon noob sur VBA mais mon taff ve que je m'y mette...
    Donc j ai pas trop le choix
    j ai pas mal avancer mais je chercher toujours comment cacher une ligne du tableur si un case au hasard est vide (=0 ou #N/A). Schant que je creer un boutton exper pour la macro.
    Si qn pourrais m'expiquer ce serai tres cool.
    Merci a tous

  2. #2
    Membre averti Avatar de mordrhim
    Inscrit en
    Avril 2007
    Messages
    270
    Détails du profil
    Informations personnelles :
    Âge : 41

    Informations forums :
    Inscription : Avril 2007
    Messages : 270
    Points : 314
    Points
    314
    Par défaut
    pour masquer une ligne,
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Taligne.EntireRow.Hidden = True

  3. #3
    Nouveau membre du Club
    Inscrit en
    Juin 2007
    Messages
    50
    Détails du profil
    Informations forums :
    Inscription : Juin 2007
    Messages : 50
    Points : 25
    Points
    25
    Par défaut
    Merci pour cette reponse,

    Seulement voila,
    j ai testé de mettre un truc du genre

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    If AC61=0 Then
    Row61.Entirerow:hidden=True
    Car je ve que si la case C61 est vide (ou plutot un #N/A) alors, toute la ligne se cache.
    Est-ce le bon code?? j en doute.

    Si tu as une idée... Merci

  4. #4
    Nouveau membre du Club
    Inscrit en
    Juin 2007
    Messages
    50
    Détails du profil
    Informations forums :
    Inscription : Juin 2007
    Messages : 50
    Points : 25
    Points
    25
    Par défaut
    Correction:
    Pas : mais . avec Hidden^^

  5. #5
    Membre chevronné Avatar de wilfried_42
    Homme Profil pro
    Auto-entrepreneur
    Inscrit en
    Novembre 2006
    Messages
    1 427
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 61
    Localisation : France, Vendée (Pays de la Loire)

    Informations professionnelles :
    Activité : Auto-entrepreneur
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Novembre 2006
    Messages : 1 427
    Points : 1 900
    Points
    1 900
    Par défaut
    bonjour


    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    if range("C61").value = "" then 
    range("C61").entirerow.hidden = true 
    else
    range("C61").entirerow.hidden = false
    end if
    cordialement
    Wilfried

  6. #6
    Nouveau membre du Club
    Inscrit en
    Juin 2007
    Messages
    50
    Détails du profil
    Informations forums :
    Inscription : Juin 2007
    Messages : 50
    Points : 25
    Points
    25
    Par défaut
    merci bcp cela fonctionne parfaitement,

    Seulement ce n'est pas une celleule vide qui est a l'origine mais un calcul qui n'a pas de valeur, c'est a dire que lorsque la cellule affiche #Value alors la ligne disparait
    Que doi je mettre entre les "" ou pas^^

    Merci de ton aide

  7. #7
    Expert confirmé
    Avatar de zazaraignée
    Profil pro
    Étudiant
    Inscrit en
    Février 2004
    Messages
    3 174
    Détails du profil
    Informations personnelles :
    Localisation : Canada

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Février 2004
    Messages : 3 174
    Points : 4 085
    Points
    4 085
    Par défaut
    #Value est un message d'erreur. Si tu essaies d'afficher la valeur de cette cellule dans un MsgBox, par exemple, VB te retournera une erreur. Essaie, pour voir.

  8. #8
    Membre chevronné Avatar de wilfried_42
    Homme Profil pro
    Auto-entrepreneur
    Inscrit en
    Novembre 2006
    Messages
    1 427
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 61
    Localisation : France, Vendée (Pays de la Loire)

    Informations professionnelles :
    Activité : Auto-entrepreneur
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Novembre 2006
    Messages : 1 427
    Points : 1 900
    Points
    1 900
    Par défaut
    re:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    if range("C61").value = "#Value" then  ' #Valeur en francais
    range("C61").entirerow.hidden = true 
    else
    range("C61").entirerow.hidden = false
    end if
    sans assurance pais je crois avoir deja vu cela quelque part
    Wilfried

  9. #9
    Nouveau membre du Club
    Inscrit en
    Juin 2007
    Messages
    50
    Détails du profil
    Informations forums :
    Inscription : Juin 2007
    Messages : 50
    Points : 25
    Points
    25
    Par défaut
    Merci mon cher Wilfried pour ces precieuses infos, d'autant plus que ca marche.

    J'aurais juste besoin d un dernier conseil:

    En fait je voudrais repeter la macro sur plusieurs lignes, J ai essayer plusieurs trucs mais qui ne fonctionne pas.
    aurais tu une idée pour cela?

    Il le faudrai pour 5 lignes qui se succedent genre par exemple de la ligne 5 a 10...
    Faut il repeter le code avec une ligne speciale entre chaque paragraphe ou alors mettre un truc plutot du genre:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    if range("C5:10").value = "" then 
    range("C5:10").entirerow.hidden = true 
    else
    range("C5:10").entirerow.hidden = false
    end if
    ??

    Je c pas trop dans quel direction partir
    Merci de prendre de ton temps pour m aider.

  10. #10
    Membre chevronné Avatar de wilfried_42
    Homme Profil pro
    Auto-entrepreneur
    Inscrit en
    Novembre 2006
    Messages
    1 427
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 61
    Localisation : France, Vendée (Pays de la Loire)

    Informations professionnelles :
    Activité : Auto-entrepreneur
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Novembre 2006
    Messages : 1 427
    Points : 1 900
    Points
    1 900
    Par défaut
    re:

    exemple avec l'ancien code, nous parlons bien de masquer les lignes, pas les supprimer

    dim i as integer
    for i = 1 61 to 65
    if range("C" & i).value = "#Value" then ' #Valeur en francais
    range("C" & I).entirerow.hidden = true
    else
    range("C" & i).entirerow.hidden = false
    end if
    next i
    bonne journée
    Wilfried

  11. #11
    Nouveau membre du Club
    Inscrit en
    Juin 2007
    Messages
    50
    Détails du profil
    Informations forums :
    Inscription : Juin 2007
    Messages : 50
    Points : 25
    Points
    25
    Par défaut
    merci pour tout, ca marche comme il faut j espere pouvoir te rendre service un de ces 4.
    Merci encore pour tout ++

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [Rave 5.0-Delphi 7] Griser une ligne sur deux
    Par Frank dans le forum Rave
    Réponses: 5
    Dernier message: 09/08/2006, 09h03
  2. Tracer une ligne sur une image
    Par Guillaume602 dans le forum Windows
    Réponses: 5
    Dernier message: 05/01/2006, 20h33
  3. [Formulaire continu] une ligne sur deux en gris
    Par genius99 dans le forum IHM
    Réponses: 7
    Dernier message: 30/10/2005, 18h52
  4. [Struts]logic:iterate - une ligne sur deux en couleur
    Par jeb001 dans le forum Struts 1
    Réponses: 24
    Dernier message: 17/10/2005, 15h07
  5. coloriser une ligne sur deux
    Par the0livier dans le forum Langage
    Réponses: 3
    Dernier message: 12/09/2005, 10h54

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo