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 :

[VBA-E] masquer une combo lorsqu'elle est vide


Sujet :

Macros et VBA Excel

  1. #41
    Membre régulier Avatar de lio62
    Profil pro
    Inscrit en
    Décembre 2006
    Messages
    472
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2006
    Messages : 472
    Points : 101
    Points
    101
    Par défaut
    ben cellheure est en place c'est juste la cb9 qui réapparait a partir du moment ou on est sur le 2 du spinbutton(label) et uniquement là c tou
    a+
    tas essayé pour voir ?

  2. #42
    Inactif  
    Avatar de ouskel'n'or
    Profil pro
    Inscrit en
    Février 2005
    Messages
    12 464
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2005
    Messages : 12 464
    Points : 15 546
    Points
    15 546
    Par défaut
    T'as tout salopé mon code, alors laisse-moi le temps. Quand veux-tu qu'il apparaisse et quand veux-tu qu'il disparaisse ?
    Pendant que j'y suis, j'ai remarqué autre chose. Quand tu sélectionnes un item dans un combo, le label ne se met pas à jour.
    pour pallier, ajoute cette ligne juste après le next du code de mon dernier post :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
        Label1.Caption = Lindex + 1
    Mais tu aurais pu trouver ça tout seul, non ?

  3. #43
    Membre régulier Avatar de lio62
    Profil pro
    Inscrit en
    Décembre 2006
    Messages
    472
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2006
    Messages : 472
    Points : 101
    Points
    101
    Par défaut
    peut etre mais je l'avais meme pas vu
    c fait le label se met a jour j'espère que tu es en repos apres tout ca
    je suis désolé d'avoir tout "salopé"

    ben pour la cbox9 elle ne devrait pas apparaitre a partir du moment ou USP est inscrit en cellule s1 de la feuil bd
    c'est bien ce qu'elle fait sauf lorsque s'affiche 2 sur le spinbutton et uniquement là

    merci a +

  4. #44
    Inactif  
    Avatar de ouskel'n'or
    Profil pro
    Inscrit en
    Février 2005
    Messages
    12 464
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2005
    Messages : 12 464
    Points : 15 546
    Points
    15 546
    Par défaut
    Tu n'as pas répondu à ma question précédente ce qui fait que je ne vais pas pouvoir répondre à ta question d'avant ma question précédente

  5. #45
    Membre régulier Avatar de lio62
    Profil pro
    Inscrit en
    Décembre 2006
    Messages
    472
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2006
    Messages : 472
    Points : 101
    Points
    101
    Par défaut
    ben pour la cbox9 elle ne devrait pas apparaitre a partir du moment ou USP est inscrit en cellule s1 de la feuil bd
    c'est bien ce qu'elle fait sauf lorsque s'affiche 2 sur le spinbutton et uniquement là

  6. #46
    Inactif  
    Avatar de ouskel'n'or
    Profil pro
    Inscrit en
    Février 2005
    Messages
    12 464
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2005
    Messages : 12 464
    Points : 15 546
    Points
    15 546
    Par défaut
    Corrige
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    Sub laprocedure(Lindex)
    Dim lecontrol As Object
    Dim Dernièreligne As Integer
    Dim NoCol As Byte  'ou Integer
        Dernièreligne = ActiveSheet.Range("A1").SpecialCells(xlCellTypeLastCell).Row
        For Each lecontrol In bduserf.Controls
            If InStr(lecontrol.Name, "cbox") = 1 Then
                NoCol = Right(lecontrol.Name, Len(lecontrol.Name) - 4)
                bduserf.Controls(lecontrol.Name).ListIndex = Lindex
                bduserf.Controls(lecontrol.Name).Visible = _
                Trim(bduserf.Controls(lecontrol.Name).List(Lindex)) <> ""
                If lecontrol.Name = "cbox9" And Lindex > 0 Then
    'J'ai bien dit 0 car lindex est décalé de 1 par rapport au No de ligne
                    CellHeure.Value = Format(cbox9.Value, "dd/mm/yy hh:mm")
                    CellHeure.Visible = Not [S1] = "USP"
                    cbox9.Visible = Not [S1] = "USP"
                End If
            End If
        
        Next
        Label1.Caption = Lindex + 1
    'Tu devrais également mettre ça dans la boucle et bien mettre Lindex et non Listindex
    '... en t'inspirant de mon code
       If cbox12.ListIndex <> 1 Then
       cellheure2.Value = Format(cbox12.Value, "dd/mm/yy")
       
    
    End If
    
    End Sub

  7. #47
    Membre régulier Avatar de lio62
    Profil pro
    Inscrit en
    Décembre 2006
    Messages
    472
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2006
    Messages : 472
    Points : 101
    Points
    101
    Par défaut
    bonsoir j'ai juste passer l'indes de la cbox 9 a 1 et ca tourne je sais pas sis c normal mais c cool (ligne en rouge)
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    Sub laprocedure(Lindex)
    Dim lecontrol As Object
    Dim Dernièreligne As Integer
    Dim NoCol As Byte  'ou Integer
    
       Dernièreligne = ActiveSheet.Range("A1").SpecialCells(xlCellTypeLastCell).Row
    
    For Each lecontrol In bduserf.Controls
    If InStr(lecontrol.Name, "cbox") = 1 Then
        NoCol = Right(lecontrol.Name, Len(lecontrol.Name) - 4)
     
        bduserf.Controls(lecontrol.Name).ListIndex = Lindex
        bduserf.Controls(lecontrol.Name).Visible = Trim(bduserf.Controls(lecontrol.Name).List(Lindex)) <> ""
      
    Label1.Caption = Lindex + 1
    End If
    Next
    If cbox9.ListIndex > -1 Then
     
        CellHeure.Value = Format(cbox9.Value, "dd/mm/yy hh:mm")
       CellHeure.Visible = Not [S1] = "USP"
       cbox9.Visible = Not [S1] = "USP"
       End If
       If cbox12.ListIndex <> 1 Then
       cellheure2.Value = Format(cbox12.Value, "dd/mm/yy")
       
    
    End If
    
    End Sub
    merci c super

    ben c comme dab c résolu un hyper merci a toi Ouskel.................................................mais au fait j'ai encore une ptite question

+ Répondre à la discussion
Cette discussion est résolue.
Page 3 sur 3 PremièrePremière 123

Discussions similaires

  1. Masquer une liste si elle est vide
    Par felix79 dans le forum Jasper
    Réponses: 1
    Dernier message: 06/12/2011, 14h45
  2. Réponses: 1
    Dernier message: 17/08/2011, 17h35
  3. Masquer une feuille lorsqu'elle perd le focus
    Par bichonviou dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 14/11/2007, 15h31
  4. Réponses: 2
    Dernier message: 10/05/2007, 22h19

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