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

Access Discussion :

Quand clique sur Annuler --> Erreur d'exécution'13' Incompatibilité de type [AC-2019]


Sujet :

Access

  1. #1
    Membre régulier
    Homme Profil pro
    Étudiant
    Inscrit en
    Novembre 2019
    Messages
    279
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 24
    Localisation : France, Landes (Aquitaine)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Novembre 2019
    Messages : 279
    Points : 85
    Points
    85
    Par défaut Quand clique sur Annuler --> Erreur d'exécution'13' Incompatibilité de type
    Bonjour,

    Je viens vers vous car je ne comprend pas car quand je clique sur le bouton annuler du ComboBox qui s'ouvre cela me génère une erreur.
    Voici le code de l'événement sur double clique de mon champ date car je l'utilise pour fixer la date.
    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
    Private Sub DateCmdLot_DblClick(Cancel As Integer)
     
        Dim dt As Date
        Dim rst As DAO.Recordset
     
     
        dt = InputBox("Choisir une date !", "Date de commande", Date) ' ouverture de la boîte de saisie pour le choix de la date
     
     
     
        ' ouverture du jeu d'enregistrements basé sur la table T_DetailCommandes filtrée par rapport au lot
        Set rst = CurrentDb.OpenRecordset("select * from EnAttPlanification where IdLot=" & Nz(Me.IdLot, 0), dbOpenDynaset)
     
        Do Until rst.EOF ' parcourt les enregistrements du lot
            rst.Edit
            rst!DateCmd = dt ' met à jour le champ DateCmd avec la date saisie dans l'inputbox
            rst.Update
     
            rst.MoveNext
        Loop
     
        Me.Requery ' on rafraîchit le sous-formulaire
     
        rst.Close
        Set rst = Nothing
     
        DoCmd.SetWarnings False
     
    End Sub
    Voici le message d'erreur
    Nom : tezy_tgheri.PNG
Affichages : 105
Taille : 2,8 Ko

    Merci d'avance !

  2. #2
    Expert éminent Avatar de hyperion13
    Homme Profil pro
    Webplanneur
    Inscrit en
    Octobre 2007
    Messages
    4 274
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 60
    Localisation : Réunion

    Informations professionnelles :
    Activité : Webplanneur

    Informations forums :
    Inscription : Octobre 2007
    Messages : 4 274
    Points : 6 583
    Points
    6 583
    Par défaut
    Salut
    A tester, mais sans garantie.
    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
    Private Sub DateCmdLot_DblClick(Cancel As Integer)
    Dim rst As DAO.Recordset
    Dim dt As String
     
    Set rst = CurrentDb.OpenRecordset("select * from EnAttPlanification where IdLot=" & Nz(Me.IdLot, 0), dbOpenDynaset)
     
    dt = Eval("InputBox(""Saisir une date au format jj/mm/aaaa !"",""Date de commande"",date())")
        If StrPtr(dt) Then ' clic Annuler
            Exit Sub
        Else
            If Len(dt) = 0 Then ' clic OK pas de date saisie
                Exit Sub
            Else
                If Not IsDate(dt) Then ' valeur saisie n'est pas date
                    MsgBox "La date saisie est incorrecte", vbCritical
                Else
                    dt = Format(dt, "mm/dd/yyyy") ' valeur saisie est date
                        Do Until rst.EOF ' parcourt les enregistrements du lot
                            rst.Edit
                            rst!DateCmd = dt ' met à jour le champ DateCmd avec la date saisie dans l'inputbox
                            rst.Update
                            rst.MoveNext
                        Loop
                    Me.Requery ' on rafraîchit le sous-formulaire
                    rst.Close
                    Set rst = Nothing
                End If
            End If
        End If
    End Sub

  3. #3
    Membre régulier
    Homme Profil pro
    Étudiant
    Inscrit en
    Novembre 2019
    Messages
    279
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 24
    Localisation : France, Landes (Aquitaine)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Novembre 2019
    Messages : 279
    Points : 85
    Points
    85
    Par défaut
    Bonjour,
    J'ai modifié un petit peu pour que celui-ci soit fonctionnel mais pas grand chose :
    Merci beaucoup de m'avoir aidé à trouver la solution
    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
    Dim rst As DAO.Recordset
    Dim dt As String
     
    dt = InputBox("Choisir une date !", "Date de commande", Date) ' ouverture de la boîte de saisie pour le choix de la date
     
     
    Set rst = CurrentDb.OpenRecordset("select * from EnAttPlanification where IdLot=" & Nz(Me.IdLot, 0), dbOpenDynaset)
     
        If StrPtr(dt) = 0 Then ' clic Annuler
            Exit Sub
        Else
        If (dt = "") Then
        MsgBox ("Veuillez rentrer une date de ce type Jour/Mois/Annee")
            Exit Sub
        Else
     
     
                    dt = Format(dt, "mm/dd/yyyy") ' valeur saisie est date
                        Do Until rst.EOF ' parcourt les enregistrements du lot
                            rst.Edit
                            rst!DateCmd = dt ' met à jour le champ DateCmd avec la date saisie dans l'inputbox
                            rst.Update
                            rst.MoveNext
                        Loop
                    Me.Requery ' on rafraîchit le sous-formulaire
                    rst.Close
                    Set rst = Nothing
                End If
     
                End If

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

Discussions similaires

  1. Erreur d'exécution "13" incompatibilité de type
    Par zenico64 dans le forum VBA Outlook
    Réponses: 1
    Dernier message: 14/12/2010, 10h45
  2. Erreur d'exécution 13 : incompatibilité de type
    Par Ptikir dans le forum Macros et VBA Excel
    Réponses: 3
    Dernier message: 01/04/2009, 15h59
  3. erreur d'exécution 13 incompatibilité de type
    Par glamgeek dans le forum Macros et VBA Excel
    Réponses: 4
    Dernier message: 17/03/2009, 12h03
  4. "erreur d'exécution 13 : incompatibilité de type"
    Par oliver75 dans le forum Macros et VBA Excel
    Réponses: 10
    Dernier message: 19/07/2007, 15h47
  5. erreur d'exécution 13, incompatibilité de type
    Par PHPdudimanche dans le forum Macros et VBA Excel
    Réponses: 8
    Dernier message: 01/06/2007, 15h20

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