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

Word Discussion :

Attribuer une valeur par défaut à un DatePicker qui se trouve sur un contrôle Multipage [WD-2010]


Sujet :

Word

  1. #1
    Candidat au Club
    Femme Profil pro
    Assistante de direction
    Inscrit en
    Septembre 2014
    Messages
    6
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Assistante de direction

    Informations forums :
    Inscription : Septembre 2014
    Messages : 6
    Points : 4
    Points
    4
    Par défaut Attribuer une valeur par défaut à un DatePicker qui se trouve sur un contrôle Multipage
    Bonjour,

    Ceci est mon premier message sur ce forum et je voudrais en profiter pour vous remercier pour la qualité de ce site qui m'a beaucoup aidée, novice que je suis en vba, à réaliser une macro sous excel.

    Je m'attaque maintenant à un projet sous word. J'ai crée un userform contenant un contrôle Multipage de 2 pages. Ces pages comprennent chacune plusieurs DatePicker auxquels je souhaiterai attribuer une valeur par défaut. Mon problème est qu'il ne le fait que pour une partie des contrôles puis me renvoie une erreur 35788 : "une erreur est survenue lors de l'appel au contrôle Windows Date And Time Picker".

    J'ai essayé avec les deux codes suivants et il m'affiche le message d'erreur dès qu'il arrive au contrôle "DTPDebut2"

    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
     
    Private Sub UserForm_Activate()
     
    'Se place sur l'onglet périodes d'absence (=page 1)
    MultiPage1.Value = 0
    'Attribue aux contrôles date DTPDebut et DTPFin la valeur du jour
    UF_Dates.MultiPage1(0).Controls("DTPDebut1").Value = Now
    UF_Dates.MultiPage1(0).Controls("DTPFin1").Value = Now
    UF_Dates.MultiPage1(0).Controls("DTPDebut2").Value = Now
    UF_Dates.MultiPage1(0).Controls("DTPFin2").Value = Now
     
    'Se place sur l'onglet Jours isolés (=page 2)
    MultiPage1.Value = 1
    'Attribue aux contrôles date DTPJour la valeur du jour
    UF_Dates.MultiPage1(1).Controls("DTPJour1").Value = Now
    UF_Dates.MultiPage1(1).Controls("DTPJour2").Value = Now
     
    End Sub
    Et avec celui-là également :

    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
     
     
    Private Sub UserForm_Activate()
     
    'Se place sur l'onglet périodes d'absence (=page 1)
    MultiPage1.Value = 0
    'Attribue aux contrôles date DTPDebut1 et DTPFin1 la valeur du jour
    UF_Dates.MultiPage1(0).Controls("DTPDebut1").Value = Now
    UF_Dates.MultiPage1(0).Controls("DTPFin1").Value = Now
     
    'Se place sur l'onglet Jours isolés (=page 2)
    MultiPage1.Value = 1
    'Attribue au contrôle date DTPJour1 la valeur du jour
    UF_Dates.MultiPage1(1).Controls("DTPJour1").Value = Now
     
    'Se place sur l'onglet périodes d'absence (=page 1)
    MultiPage1.Value = 0
    'Attribue aux contrôles date DTPDebut2 et DTPFin2 la valeur du jour
    UF_Dates.MultiPage1(0).Controls("DTPDebut2").Value = Now
    UF_Dates.MultiPage1(0).Controls("DTPFin2").Value = Now
     
    'Se place sur l'onglet Jours isolés (=page 2)
    MultiPage1.Value = 1
    'Attribue au contrôle date DTPJour2 la valeur du jour
    UF_Dates.MultiPage1(1).Controls("DTPJour2").Value = Now
     
    End Sub
    Malgré mes recherches je n'ai pas trouvé d'où vient l'erreur ni quelle est la manière correcte de procéder.

    Merci d'avance à toutes les bonnes volontés qui voudront bien se pencher sur mon problème !

  2. #2
    Expert éminent sénior
    Avatar de kiki29
    Homme Profil pro
    ex Observeur CGG / Analyste prog.
    Inscrit en
    Juin 2006
    Messages
    6 132
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Finistère (Bretagne)

    Informations professionnelles :
    Activité : ex Observeur CGG / Analyste prog.

    Informations forums :
    Inscription : Juin 2006
    Messages : 6 132
    Points : 11 274
    Points
    11 274
    Par défaut
    Salut, peut-être une réponse ici

  3. #3
    Candidat au Club
    Femme Profil pro
    Assistante de direction
    Inscrit en
    Septembre 2014
    Messages
    6
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Assistante de direction

    Informations forums :
    Inscription : Septembre 2014
    Messages : 6
    Points : 4
    Points
    4
    Par défaut
    Bonjour,

    Merci pour votre réponse. J'avais préalablement consulté la page que vous m'indiquez, ce qui m'a amené à ajouter :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    'Se place sur l'onglet périodes d'absence (=page 1)
    MultiPage1.Value = 0
    avant d'attribuer une valeur aux DatePicker. Ça a permis d'attribuer une valeur par défaut aux deux premiers contrôles mais malheureusement cela ne fonctionne pas pour les suivants

  4. #4
    Expert éminent sénior
    Avatar de kiki29
    Homme Profil pro
    ex Observeur CGG / Analyste prog.
    Inscrit en
    Juin 2006
    Messages
    6 132
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Finistère (Bretagne)

    Informations professionnelles :
    Activité : ex Observeur CGG / Analyste prog.

    Informations forums :
    Inscription : Juin 2006
    Messages : 6 132
    Points : 11 274
    Points
    11 274
    Par défaut
    Salut, pour initialiser le contenu d'une UserForm à des valeurs par défaut utiliser UserForm_Initialize
    ici un exemple sommaire qui fonctionne
    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
    Option Explicit
     
    Private Sub UserForm_Initialize()
        With Me
            With .MultiPage1
                .Value = 0
                .Pages(0).DTPicker1.Value = Now + 1
                .Pages(0).DTPicker3.Value = Now + 3
                .Value = 1
                .Pages(1).DTPicker2.Value = Now + 2
                .Pages(1).DTPicker4.Value = Now + 4
                .Value = 0
            End With
        End With
    End Sub
    voir Utiliser les UserForm en VBA Excel

  5. #5
    Candidat au Club
    Femme Profil pro
    Assistante de direction
    Inscrit en
    Septembre 2014
    Messages
    6
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Assistante de direction

    Informations forums :
    Inscription : Septembre 2014
    Messages : 6
    Points : 4
    Points
    4
    Par défaut
    Bonjour,

    Merci kiki29 pour ta proposition de code !
    Je viens de la tester dans mon document mais rien ne se passe : je n'ai plus de message d'erreur mais la date qui s'affiche reste celle à la quelle j'ai créé mon userform... Si cela fonctionne chez toi est-ce que ça peut venir d'un problème ailleurs dans mon document ? A tout hasard je le joins à ce message, si quelqu'un à le courage d'y jeter un œil.

    demande-conges2015_vtest.zip

    Bonne journée !

  6. #6
    Rédacteur/Modérateur

    Avatar de Heureux-oli
    Homme Profil pro
    Contrôleur d'industrie
    Inscrit en
    Février 2006
    Messages
    21 087
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 59
    Localisation : Belgique

    Informations professionnelles :
    Activité : Contrôleur d'industrie
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Février 2006
    Messages : 21 087
    Points : 42 926
    Points
    42 926
    Par défaut
    Salut,

    En reprenant ton code, j'ai fait quelques tests, effectivement, les dates ne sont pas prises en compte lors de l'activation du formulaire.
    Si je change la date lors de l'affichage de la ligne ça fonctionne.


    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    'Fait apparaitre une nouvelle ligne à chaque clic
    If DTPJour1.Visible = False Then
        DTPJour1.Visible = True
        DTPJour1.Value = Date + 1
        FrameJourNatureAbsence1.Visible = True
        BoutonCongesJours1.Visible = True
        BoutonAEJours1.Visible = True
        BoutonRecupJours1.Visible = True
    J'ai pas encore de décodeur, alors, postez en clair ! Comment mettre une balise de code ?
    Débutez en VBA

    Mes articles


    Dans un MP, vous pouvez me dire que je suis beau, ... mais si c'est une question technique je ne la lis pas ! Vous êtes prévenus !

  7. #7
    Candidat au Club
    Femme Profil pro
    Assistante de direction
    Inscrit en
    Septembre 2014
    Messages
    6
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Assistante de direction

    Informations forums :
    Inscription : Septembre 2014
    Messages : 6
    Points : 4
    Points
    4
    Par défaut
    Bonjour Heureux-oli,

    Ta solution marche parfaitement
    Un grand merci à chacun pour vos réponses et le temps que vous avez consacré à mon problème !

    Je clos le sujet et vous souhaite une bonne continuation

  8. #8
    Expert éminent sénior
    Avatar de kiki29
    Homme Profil pro
    ex Observeur CGG / Analyste prog.
    Inscrit en
    Juin 2006
    Messages
    6 132
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Finistère (Bretagne)

    Informations professionnelles :
    Activité : ex Observeur CGG / Analyste prog.

    Informations forums :
    Inscription : Juin 2006
    Messages : 6 132
    Points : 11 274
    Points
    11 274
    Par défaut
    Salut, effectivement l'erreur 35788 est liée à un DTPicker invisible

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

Discussions similaires

  1. Réponses: 2
    Dernier message: 06/08/2013, 08h57
  2. [AC-2000] Syntaxe de ALTER pour attribuer une valeur par défaut
    Par ClaudeLELOUP dans le forum Requêtes et SQL.
    Réponses: 10
    Dernier message: 14/10/2010, 20h05
  3. Réponses: 21
    Dernier message: 23/06/2008, 18h35
  4. Réponses: 2
    Dernier message: 22/02/2008, 10h54
  5. Réponses: 11
    Dernier message: 26/08/2006, 21h13

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