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

VBA PowerPoint Discussion :

Saisie de date dans une zone de texte


Sujet :

VBA PowerPoint

  1. #1
    Membre à l'essai
    Inscrit en
    Septembre 2009
    Messages
    12
    Détails du profil
    Informations forums :
    Inscription : Septembre 2009
    Messages : 12
    Points : 10
    Points
    10
    Par défaut Saisie de date dans une zone de texte
    Bonjour,

    Tout d'abord, je vous prie de pardonner mon incompétence. J'ai bien essayer de chercher une solution, mais en vain

    Mon problème :

    J'essaye d'intégrer un petit calcul interactif dans une prez PPT, reprenant un calcul simple des frais de résiliation d'un abonnement de téléphone mobile tenant compte de la loi Chatel...bref

    J'ai intégrer pour le moment 3 TextBox (Plif, Plaf, Pluf). Une pour la date de début d'engagement, une autre pour la date de fin et une troisième pour afficher le nombre de mois restant.

    Voici le code que j'ai bricoler :
    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
    Private Sub Plaf_Change()
        Call calculate
    End Sub
     
    Private Sub Plif_Change()
        Call calculate
    End Sub
     
    Sub calculate()
     
    ' Date1 => date de début
    Dim dat1 As Date
    'Date2 => date de fin
    Dim dat2 As Date
    Dim nbre_mois As Integer
     
    dat1 = DateValue(Plif)
    dat2 = DateValue(Plaf)
     
    Pluf = DateDiff("m", dat1, dat2)
     
    End Sub
    Or ce code fonctionne, mais j'ai un message d'erreur VBA "Erreur 13 -> Incompatibilité de type" qui pointe sur dat1 = DateValue(Plif) à chaque caractère saisi dans mes TextBox...

    Comment l'éviter ? Y a-t-il une manière d'intégrer des saisie de date plus facilement ? D'autant que je n'ai pas fini mon histoire car après le calcul du nombre de mois de complets, il faut que j'arrive à ressortir le nombre de jour pour le calcul du prorata sur le mois incomplet...

    Merci de votre aide.

  2. #2
    Invité
    Invité(e)
    Par défaut
    Bonjour

    Lorsque tu utilises l'évènement Change, le code est interprété à chaque saisie, hors ta date ne sera valide qu'à la fin de la saisie complète.

    Il faut donc réaliser un contrôle de la saisie de la sorte :

    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
    Sub calculate()
     
    ' Date1 => date de début
    Dim dat1 As Date
    'Date2 => date de fin
    Dim dat2 As Date
    Dim nbre_mois As Integer
     
        If IsDate(Me.Plif.Value) And IsDate(Me.Plaf.Value) Then
            dat1 = DateValue(Plif)
            dat2 = DateValue(Plaf)
     
            Pluf = DateDiff("m", dat1, dat2)
        Else
            Exit Sub
        End If
    End Sub
    Philippe

  3. #3
    Membre à l'essai
    Inscrit en
    Septembre 2009
    Messages
    12
    Détails du profil
    Informations forums :
    Inscription : Septembre 2009
    Messages : 12
    Points : 10
    Points
    10
    Par défaut
    Merci de cette réponse. J'ai pris bonnes notes des balises de code à insérer

Discussions similaires

  1. Icone Calendar & afficher la date dans une zone de texte
    Par insane_80 dans le forum ASP.NET
    Réponses: 2
    Dernier message: 22/02/2009, 23h29
  2. [Calendrier] Icone calendrier et affichage de la date dans une zone de texte
    Par jbenz dans le forum EDI, CMS, Outils, Scripts et API
    Réponses: 1
    Dernier message: 27/12/2008, 16h55
  3. afficher date dans une zone de texte
    Par mawelle dans le forum IHM
    Réponses: 2
    Dernier message: 19/05/2008, 18h43
  4. Date dans une Zone de texte
    Par BRUNO71 dans le forum VBA Access
    Réponses: 3
    Dernier message: 10/05/2008, 07h36
  5. Autoriser la saisie des virgules dans une zone de texte
    Par griese dans le forum Général JavaScript
    Réponses: 9
    Dernier message: 10/07/2006, 11h19

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