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 et valeur affichées sur le moment présent dans mon userform1 [XL-2010]


Sujet :

Macros et VBA Excel

  1. #1
    Candidat au Club
    Femme Profil pro
    secrétaire de dir
    Inscrit en
    Février 2014
    Messages
    16
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations professionnelles :
    Activité : secrétaire de dir

    Informations forums :
    Inscription : Février 2014
    Messages : 16
    Points : 4
    Points
    4
    Par défaut Vba et valeur affichées sur le moment présent dans mon userform1
    bonjour a tous je viens vers vous pour une petite question qui m’embête depuis quelques jours :
    j'ai fais un un classeur excel que j'ai nomé BD, contenant des nom, prénom, num. de badge, heures, secteurs, tél,....
    j'ai créé dans visual basic un userform1 avec différentes frames et autres fonctions
    dont voici le code
    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
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    86
    87
    88
    89
    90
    91
    92
    93
    94
    95
    96
    97
    98
    99
    100
    101
    102
    103
    104
    105
    106
    107
    108
    109
    110
    111
    112
    113
    114
    115
    116
    117
    118
    119
    120
    121
    122
    123
    124
    125
    126
    127
    128
    129
    130
    131
    132
    133
    134
    135
    136
    137
    138
    139
    140
    141
    142
    143
    144
    145
    146
    147
    148
    149
    150
    151
    152
    153
    154
    155
    156
    157
    158
    159
    160
    161
    162
    163
    164
    165
    166
    167
    168
    169
    170
    171
    172
    173
    174
    175
    176
    177
    178
    179
    180
    181
    182
    183
    184
    185
    186
    187
    188
    189
    190
    191
    192
    193
    194
    195
    196
    197
    Option Explicit
    Option Compare Text
    Private x As Variant
    Private pl As Range
    Private cel As Range
    Private nl As Long
    Private Sub TextBox1_Change()
     
    End Sub
     
    Private Sub TextBox2_Change()
     
    End Sub
     
    Private Sub TextBox3_Change()
     
    End Sub
     
    Private Sub TextBox4_Change()
     
    End Sub
     
    Private Sub TextBox6_Change()
     
    End Sub
     
    Private Sub TextBox7_Change()
     
    End Sub
     
    Private Sub Label1_Click()
     
    End Sub
     
    Private Sub Label2_Click()
     
    End Sub
     
    Private Sub Label3_Click()
     
    End Sub
     
    Private Sub Label4_Click()
     
    End Sub
     
    Private Sub Label5_Click()
     
    End Sub
     
    Private Sub Label6_Click()
     
    End Sub
     
    Private Sub Label7_Click()
     
    End Sub
     
     
    Private Sub CommandButton1_Click()
    ' Valider
    Dim dest As Range
    With Sheets("BD")
        If nl = 0 Then
     
            Set dest = .Cells(Application.Rows.Count, 1).End(xlUp).Offset(1, 0)
        Else
            Set dest = .Cells(nl, 1)
        End If
    End With
    For x = 1 To 6
         dest.Value = Me.Controls("TextBox1").Value
         dest.Offset(0, x).Value = Me.Controls("TextBox" & x + 1).Value
     Next x
    Unload Me
    userform1.Show
    End Sub
     
    Private Sub ComboBox1_Change()
     
      Me.ListBox1.Clear
      For Each cel In pl
        If CStr(cel.Value) = CStr(Me.ComboBox1.Value) Then
          nl = cel.Row
          With Me.ListBox1
            .AddItem Sheets("BD").Cells(cel.Row, 1)
            .List(.ListCount - 1, 1) = Sheets("BD").Cells(nl, 2)
            .List(.ListCount - 1, 2) = nl
          End With
        End If
      Next cel
      If Me.ListBox1.ListCount = 1 Then Me.ListBox1.ListIndex = 0
    End Sub
     
    Private Sub ListBox1_Click()
     
      nl = Me.ListBox1.Column(2, Me.ListBox1.ListIndex)
      For x = 0 To 7
        Me.Controls("TextBox" & x + 1).Value = Sheets("BD").Cells(nl, 1 + x)
      Next x
     
      With Me.TextBox1
       ' .SetFocus
        .SelStart = 0
        .SelLength = Len(.Value)
      End With
    End Sub
     
    Private Sub OptionButton2_Click()
    ComboBox1.Visible = True
    Call obG1
    End Sub
     
    Private Sub OptionButton3_Click()
    ComboBox1.Visible = True
    Call obG2
    End Sub
     
    Private Sub OptionButton4_Click()
    ComboBox1.Visible = True
    Call obG2
    End Sub
     
    Private Sub CommandButton2_Click()
    Unload Me
    End Sub
     
    Private Sub OptionButton1_Click()
    ComboBox1.Visible = True
    Call obG1
    End Sub
     
    Private Sub obG1()
    Dim col As Variant
    Dim dico As Object
    Dim tbl As Variant
    Dim I As Variant
    Dim j As Variant
    Dim temp As Variant
     
    userform1.ComboBox1.Clear
    col = IIf(userform1.OptionButton2.Value = True, 7, 1)
    With Sheets("BD")
        Set pl = .Range(.Cells(2, col), .Cells(Application.Rows.Count, col).End(xlUp))
    End With
     
    Set dico = CreateObject("scripting.dictionary")
    For Each cel In pl
        dico(cel.Value) = ""
    Next cel
    tbl = dico.keys
     
     
    For I = 0 To UBound(tbl, 1)
    For j = 0 To UBound(tbl, 1)
            If tbl(I) < tbl(j) Then
                temp = tbl(I)
                tbl(I) = tbl(j)
                tbl(j) = temp
            End If
        Next j
    Next I
    userform1.ComboBox1.List = tbl
    End Sub
     
    Private Sub obG2()
    Dim col As Variant
    Dim dico As Object
    Dim tbl As Variant
    Dim I As Variant
    Dim j As Variant
    Dim temp As Variant
     
    userform1.ComboBox1.Clear
    col = IIf(userform1.OptionButton4.Value = True, 5, 4)
    With Sheets("BD")
        Set pl = .Range(.Cells(2, col), .Cells(Application.Rows.Count, col).End(xlUp))
    End With
     
    Set dico = CreateObject("scripting.dictionary")
    For Each cel In pl
        dico(cel.Value) = ""
    Next cel
    tbl = dico.keys
     
     
    For I = 0 To UBound(tbl, 1)
    For j = 0 To UBound(tbl, 1)
            If tbl(I) < tbl(j) Then
                temp = tbl(I)
                tbl(I) = tbl(j)
                tbl(j) = temp
            End If
        Next j
    Next I
    userform1.ComboBox1.List = tbl
    End Sub
    je souhaite avoir sur mon userform1, 4 listbox (4 secteur dans l'usine ou je travaille) contenant la liste en temps réel des personnes présentes dans ces différents secteurs, sans que je n'ai besoin de ne rien faire que d'avoir mon userform ouvert(ce qui est le cas toute la journée)
    exemple :

    nom-------prénom----badge------heures----------secteur---------poste-----------------------------------------------liste box secteur 1-----------------liste box secteur 2--------------liste box secteur 3-------------liste box secteur 4
    Edmond----Tony------17141----14h00-16h00--------2-------------3531----------------------------------------------------------------------------------------Edmond Tony
    Durand-----Pierre-----12578----14h00-16h00--------4-------------1821------------------------------------------------------------------------------------------------------------------------------------------------------------Durand Pierre
    ...

  2. #2
    Expert éminent sénior
    Homme Profil pro
    aucune
    Inscrit en
    Septembre 2011
    Messages
    8 208
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : aucune

    Informations forums :
    Inscription : Septembre 2011
    Messages : 8 208
    Points : 14 363
    Points
    14 363
    Par défaut
    Bonjour,

    Une petite précision : on ne parle pas d'ouverture d'ouverture pour un userform. Celui-ci est déchargé ou chargé; il peut contenir des données et on peut y accéder. Il est ensuite masqué ou affiché (cette dernière option semble répondre à ce que tu souhaites). Par contre, il serait préférable que tu mettes le classeur, sans données confidentielles, en PJ.

  3. #3
    Expert éminent sénior


    Profil pro
    Inscrit en
    Juin 2003
    Messages
    14 008
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2003
    Messages : 14 008
    Points : 20 040
    Points
    20 040
    Par défaut
    Bonjour,

    tu ne nous dis pas comment est mis à jour ton classeur ... d'ou viennent tes données "liste en temps réel des personnes présentes" comment arrivent-elles sur ton classeur ?

    ..

  4. #4
    Candidat au Club
    Femme Profil pro
    secrétaire de dir
    Inscrit en
    Février 2014
    Messages
    16
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations professionnelles :
    Activité : secrétaire de dir

    Informations forums :
    Inscription : Février 2014
    Messages : 16
    Points : 4
    Points
    4
    Par défaut
    bonjour et merci de votre attention
    pour les données qui doivent être mise a jour elles sont sur ma feuille BD qui est mise a jour en fonction des appel si des personnes sont malades et donc avec mon userform je modifie ma BD mais je souhaiterai avoir dessus l'affichage de mes 4 secteurs avec les personnes dedans en fonction de l'heur au moment présent par rapport a ce qui est marqué dans ma BD







    Voici un exemple fait vite fait de ce qui m'intéresse :
    ma base de donnée est sur la feuil 1
    mon bouton order est sur la feuil 2

    exemple.xls

  5. #5
    Expert éminent sénior
    Homme Profil pro
    aucune
    Inscrit en
    Septembre 2011
    Messages
    8 208
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : aucune

    Informations forums :
    Inscription : Septembre 2011
    Messages : 8 208
    Points : 14 363
    Points
    14 363
    Par défaut
    Bonjour,

    Tu ne peux pas afficher le userform en non modal avec une macro et travailler sur une feuille. Le userform se fermera avec la macro qui l'a ouvert. Je ne vois pas non plus l'intérêt que tu as à utiliser un userform dans ce cas. Tu peux le faire en affichent la même chose sur une feuille.

  6. #6
    Invité
    Invité(e)
    Par défaut Bonjour,
    pour moi la question de bbil reste valable, tu ne décris pas le processus.
    feuille BD qui est mise a jour en fonction des appel si des personnes sont malades
    et si elles sont en bonne santés elles sont forcément présente à un endroit donnée et ce quelque soit l'heure?
    Citation Envoyé par bbil Voir le message
    Bonjour,

    tu ne nous dis pas comment est mis à jour ton classeur ... d'ou viennent tes données "liste en temps réel des personnes présentes" comment arrivent-elles sur ton classeur ?

    ..

  7. #7
    Candidat au Club
    Femme Profil pro
    secrétaire de dir
    Inscrit en
    Février 2014
    Messages
    16
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations professionnelles :
    Activité : secrétaire de dir

    Informations forums :
    Inscription : Février 2014
    Messages : 16
    Points : 4
    Points
    4
    Par défaut
    je m'explique pour chaque personne de l'entreprise (150 noms) j'ai sur ma feuille "BD" 3 créneaux horaire quant une personne est malade je vais sur mon userform je tape le num de badge ou le nom et dans ma colonne de présence je supprime le nom.
    Ce qui fera que les listbox n'afficheront pas le nom de la personne.
    Le soir le fichier est restauré a partir de l'original et du coup le lendemain je repart à 0


    Daniel. C
    Tu peux le faire en affichent la même chose sur une feuille.
    je ne suis pas parvenue à le faire. la seule chose que je suis arrivée a faire c un formulaire mais qui ne fonctionne pas bien car quant je tape les première lettres du nom il me fait pas de suggestions de nom.

  8. #8
    Expert éminent sénior
    Homme Profil pro
    aucune
    Inscrit en
    Septembre 2011
    Messages
    8 208
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : aucune

    Informations forums :
    Inscription : Septembre 2011
    Messages : 8 208
    Points : 14 363
    Points
    14 363
    Par défaut
    Bonjour,

    Même s'il est possible de traiter ta demande, il faut modifier deux choses dans ta BD :

    1. Suppression des cellules fusionnées
    2. Séparation des heures de début et de fin des vacations

    En ce qui concerne le traitement, il faudra que tu ajoutes un bouton pour réactualiser l’affichage. J'ai modifié ta BD comme suit :

    Nom : Capture.JPG
Affichages : 129
Taille : 58,2 Ko

    J'attends ton accord ou tes modifs (il y a beaucoup d'informations redondantes qui seraient mieux dans une autre table).

  9. #9
    Candidat au Club
    Femme Profil pro
    secrétaire de dir
    Inscrit en
    Février 2014
    Messages
    16
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations professionnelles :
    Activité : secrétaire de dir

    Informations forums :
    Inscription : Février 2014
    Messages : 16
    Points : 4
    Points
    4
    Par défaut
    bonjour,
    ça me vas tout a fait.
    Pour les information redondantes la seule chose que ça fait c'est que ça alourdi le fichier? si ce n'est que ça ce n'est pas grave du moment que j'arrive a un résultat.

    OK pour le bouton de MAJ aussi mais je ne sait pas le code qu'il faudra mètre pour le bouton

    merci de prêter attention a mon problème a ce rythme la j'aurais mon augmentation le mois prochain(trop contente ^^)

    par contre il faut penser que j'ai 200 nom dans ma BD c'est pour sa que j'utilise mon userform qui me simplifie la recherche et la modification

  10. #10
    Expert éminent sénior
    Homme Profil pro
    aucune
    Inscrit en
    Septembre 2011
    Messages
    8 208
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : aucune

    Informations forums :
    Inscription : Septembre 2011
    Messages : 8 208
    Points : 14 363
    Points
    14 363
    Par défaut
    Là, j'ai rempli les listboxes. Dis-moi si ça te convient. (J'ai été obligé de changer des horaires pour voir des noms s'afficher).

    milka_kata exemple2.xls

    Il ne restera plus que le bouton pour l'actualisation.

  11. #11
    Candidat au Club
    Femme Profil pro
    secrétaire de dir
    Inscrit en
    Février 2014
    Messages
    16
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations professionnelles :
    Activité : secrétaire de dir

    Informations forums :
    Inscription : Février 2014
    Messages : 16
    Points : 4
    Points
    4
    Par défaut
    merci pour cette évolution par contre :

    est il normal que les heures soit affichées en nombres et plus en heures?

    si oui comment les re-basculer en heure?

    et pareille pour les secteurs?

    est il possible de modifier maintenant le nom de mes différents secteur a la place de 1.2.3.4 mettre les vrais noms, et que me faut il corriger sur le code de mon userform?

    pour le bouton de MaJ, quant je clic sur valider ça actualise ^^ donc tranquille de ce coté la ^^ mais il me semble avoir lue sur le net que si on rajoute dans un label, l'heure cela actualise tout seul .... reste à prouver^^

    mais sinon c tip top

  12. #12
    Expert éminent sénior
    Homme Profil pro
    aucune
    Inscrit en
    Septembre 2011
    Messages
    8 208
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : aucune

    Informations forums :
    Inscription : Septembre 2011
    Messages : 8 208
    Points : 14 363
    Points
    14 363
    Par défaut
    A quelle heure à tu fait ton test ?

    est il normal que les heures soit affichées en nombres et plus en heures?
    Sur la feuille ou sur l'userform ?

    et pareille pour les secteurs?
    Qu'est-ce qu'ils ont, les secteurs ?

    est il possible de modifier maintenant le nom de mes différents secteur a la place de 1.2.3.4 mettre les vrais noms, et que me faut il corriger sur le code de mon userform?
    Ca change beaucoup de choses; j'étais parti du fait qu'il fallait faire "+1" sur le numéro de secteur pour obtenir le n° de listbox. Je vais faire une modif en les nommant "Secteur1", Secteur2" etc. et tu n'auras quà remplacer ces noms par les vrais.

    Réponds-moi vite sur ces points, ton augmentation s'éloigne...

  13. #13
    Candidat au Club
    Femme Profil pro
    secrétaire de dir
    Inscrit en
    Février 2014
    Messages
    16
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations professionnelles :
    Activité : secrétaire de dir

    Informations forums :
    Inscription : Février 2014
    Messages : 16
    Points : 4
    Points
    4
    Par défaut
    j'ai fais le test dés que tu as poster ta réponse.

    pour les heures ce sont celle sur le userform
    pour les secteur il me faut juste changer le nom des secteurs pour les différents nom de l'usine.
    désolée pour le travail en plus.... ca m'apprendra à m'exprimer clairement

  14. #14
    Expert éminent sénior
    Homme Profil pro
    aucune
    Inscrit en
    Septembre 2011
    Messages
    8 208
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : aucune

    Informations forums :
    Inscription : Septembre 2011
    Messages : 8 208
    Points : 14 363
    Points
    14 363
    Par défaut
    Bonjour,

    J'ai l'impression qu'on ne travaille pas sur le même fichier... Je n'ai pas d'heures affichées. Où doivent-elles s'afficher et que faut-il faire pour qu'elles s'affichent ? Dans le classeur joint, dans la macro Userform_Activate, il faudra remplacer Secteur1, Secteur2 etc par le nom de tes secteurs. Secteur1 correspond à ListBox2, Secteur2 à ListBox3 etc. Le remplacement doit se faire dans cette ligne :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    [ATTACH]150692[/ATTACH]
    désolée pour le travail en plus....
    Finalement, ça n'a fait que deux lignes en plus.

  15. #15
    Candidat au Club
    Femme Profil pro
    secrétaire de dir
    Inscrit en
    Février 2014
    Messages
    16
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations professionnelles :
    Activité : secrétaire de dir

    Informations forums :
    Inscription : Février 2014
    Messages : 16
    Points : 4
    Points
    4
    Par défaut
    bonjour, et merci pour cette mise a jour.

    quant je lance mon userform et que je clic sur prénom je sélectionne par exemple jhon et que je clic sur le premier duroud de ma listbox1 en dessous il m'affiche sur la liste employé heures 0.1666666667 et dans le secteur il me met l'heure de fin (ça je corrigerai en rajoutant une case sur mon userform heure de début et heure de fin) il marque 0.25.

    ce sont ces heures la que j'aimerais pouvoir lire en heure ( si possible et pas en 100eme d'heure)

    sinon, honnêtement tu es un dieu du vba ^^

  16. #16
    Expert éminent sénior
    Homme Profil pro
    aucune
    Inscrit en
    Septembre 2011
    Messages
    8 208
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : aucune

    Informations forums :
    Inscription : Septembre 2011
    Messages : 8 208
    Points : 14 363
    Points
    14 363
    Par défaut
    Je pense que c'est corrigé; vérifie. Le problème venait de la colonne que j'avais rajouté sur la feuille :

    milka_kata exemple2.xls

  17. #17
    Candidat au Club
    Femme Profil pro
    secrétaire de dir
    Inscrit en
    Février 2014
    Messages
    16
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations professionnelles :
    Activité : secrétaire de dir

    Informations forums :
    Inscription : Février 2014
    Messages : 16
    Points : 4
    Points
    4
    Par défaut
    la en l'ouvrant les heures sont bonnes par contre il y a un problème avec les listbox sur le coté qui donne des valeurs obsolète ainsi que les heures de la combo box qui ne sont pas bonnes


    quant je colle mes données dans le tableau, je rencontre aussi un message d'erreur qui serait sur cette ligne

    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
    Private Sub UserForm_activate()
    Dim Plage As Range, C As Range, Secteurs As Variant, I As Byte
        Secteurs = Array("Entrée 2", "c.cars", "B1", "B2")
        Tim = #10:00:00 AM#
        With Sheets("Feuil1")
            Set Plage = .Range("A2", .Cells(.Rows.Count, 1).End(xlUp))
            For Each C In Plage
                Debug.Print C.Value, C.Offset(, 4), C.Offset(, 5)
                If Date < C.Offset(, 10).Value Or Date > C.Offset(, 11).Value Then
                    I = Application.Match(C.Offset(, 6), Secteurs, 0)
                    If Tim >= C.Offset(, 4).Value And Tim <= C.Offset(, 5).Value Then
                        Me.Controls("Listbox" & I + 1).AddItem C.Offset(, 1).Value & " " & C.Value
                    End If
                End If
            Next C

  18. #18
    Expert éminent sénior
    Homme Profil pro
    aucune
    Inscrit en
    Septembre 2011
    Messages
    8 208
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : aucune

    Informations forums :
    Inscription : Septembre 2011
    Messages : 8 208
    Points : 14 363
    Points
    14 363
    Par défaut
    Au temps pour moi; comme je travaillais avec une plage d'horaire où il n'y avait personne, j'avais remplacé "Time" (l'heure) par la variable "Tim" que j'avais réglé à 10:00. Corrige donc :

    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
    Private Sub UserForm_Activate()
        Dim Plage As Range, C As Range, Secteurs As Variant, I As Byte
        Secteurs = Array("Secteur1", "Secteur2", "Secteur3", "Secteur4")
        With Sheets("Feuil1")
            Set Plage = .Range("A2", .Cells(.Rows.Count, 1).End(xlUp))
            For Each C In Plage
                Debug.Print C.Value, C.Offset(, 4), C.Offset(, 5)
                If Date < C.Offset(, 10).Value Or Date > C.Offset(, 11).Value Then
                    I = Application.Match(C.Offset(, 6), Secteurs, 0)
                    If Time >= C.Offset(, 4).Value And Time <= C.Offset(, 5).Value Then
                        Me.Controls("Listbox" & I + 1).AddItem C.Offset(, 1).Value & " " & C.Value
                    End If
                End If
            Next C
        End With
    End Sub
    Pour la combobox, qu'est-ce que tu dois récupérer ? quelque chose comme :

    de 8:00 à 10:00 ?

  19. #19
    Candidat au Club
    Femme Profil pro
    secrétaire de dir
    Inscrit en
    Février 2014
    Messages
    16
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations professionnelles :
    Activité : secrétaire de dir

    Informations forums :
    Inscription : Février 2014
    Messages : 16
    Points : 4
    Points
    4
    Par défaut
    oui ce serait parfait pour la combo box ^^


    pour ce qui est de l'erreur elle est toujours présente et me renvoie le message :

    Erreur d'exécution '13' : Incompatibilité de type


    le débogage me renvoie sur la même ligne que tout a l'heure:

    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
    Private Sub UserForm_Activate()
        Dim Plage As Range, C As Range, Secteurs As Variant, I As Byte
        Secteurs = Array("Entrée 2", "c.cars", "B1", "B2")
        With Sheets("Feuil1")
            Set Plage = .Range("A2", .Cells(.Rows.Count, 1).End(xlUp))
            For Each C In Plage
                Debug.Print C.Value, C.Offset(, 4), C.Offset(, 5)
                If Date < C.Offset(, 10).Value Or Date > C.Offset(, 11).Value Then
                    I = Application.Match(C.Offset(, 6), Secteurs, 0)
                    If Time >= C.Offset(, 4).Value And Time <= C.Offset(, 5).Value Then
                        Me.Controls("Listbox" & I + 1).AddItem C.Offset(, 1).Value & " " & C.Value
                    End If
                End If
            Next C
        End With
    End Sub

  20. #20
    Expert éminent sénior
    Homme Profil pro
    aucune
    Inscrit en
    Septembre 2011
    Messages
    8 208
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : aucune

    Informations forums :
    Inscription : Septembre 2011
    Messages : 8 208
    Points : 14 363
    Points
    14 363
    Par défaut
    Ton erreur signifie que le secteur de la feuille ne correspond pas à ceux de la feuille. Quand tu as l'erreur, si tu positionnes le curseur (sans cliquer sur "Offset" de "C.Offset(,6)" de la ligne en jaune, qu'est-ce qui s'affiche dans l'info-bulle ?

+ Répondre à la discussion
Cette discussion est résolue.
Page 1 sur 2 12 DernièreDernière

Discussions similaires

  1. Réponses: 5
    Dernier message: 14/09/2010, 18h11
  2. Transmettre valeur d'une balise div présente dans un formulaire
    Par nicoaix dans le forum Général JavaScript
    Réponses: 6
    Dernier message: 24/04/2008, 16h33
  3. [VBA] Menu qui pointe sur une macro contenue dans un fichier xla protégé
    Par EvaristeGaloisBis dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 07/08/2007, 15h34
  4. Réponses: 2
    Dernier message: 25/02/2006, 12h04
  5. Réponses: 2
    Dernier message: 02/06/2005, 11h21

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