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 Access Discussion :

Etats non reconnus en tant que Sourceobject ? [AC-2016]


Sujet :

VBA Access

  1. #1
    Membre actif
    Homme Profil pro
    Inscrit en
    Janvier 2011
    Messages
    1 092
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Janvier 2011
    Messages : 1 092
    Points : 268
    Points
    268
    Par défaut Etats non reconnus en tant que Sourceobject ?
    Bonjour à tous

    Dans le code ci-dessous le sourceobject d'un formulaire de navigation est interrogé pour déclencher une action suivant si l'objet incrusté dans celui-ci est un formulaire ou un état, or, curieusement, lorsqu'il s'agît du nom d'un état le code ne réagît pas ...

    Dans l'exemple suivant la condition est prise en compte lorsqu'il s'agît du formulaire "sf suggestionterriers" mais dès qu'il s'agît du nom d'un état comme dans le deuxième test, pas de réaction ... De quoi cela peut-il venir selon vous ?
    (j'ai essayé de remplacer les "select case" par des "if" , rien ne change ...


    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
    Private Sub btnCreerPDFSuggestions_Click()
     
    Dim oFD As Office.FileDialog
    Dim strChemin As String
    'Dim strDossierPrincipal As String
    Dim strNomDocument As String
    Dim strPathDocument As String
    Dim nomEtat As String
    Dim Criteria As String
     
    'On Error Resume Next
     
     
     
    Select Case Me.SFNavTerriers.SourceObject
     
        Case "sf suggestionterriers"
     
            MsgBox "Ce formulaire n'est pas enregistrable en format PDF : Choisissez un rapport par exploitants, parcelles ou propriétaires.", vbCritical, "Erreur"
     
            Exit Sub
     
         Case "rptdetailsterriersparexploitants"
         MsgBox "exploitants"
     
            nomEtat = "rptdetailsterriersparexploitants"
     
     
        Select Case Me.cboExploitantTerriers
     
            Case Is = ""
                Criteria = "select * from [tmpdetailsterriers] order by idsuggestion"
                strNomDocument = "Liste suggestions de terriers par exploitants au " & Format(Now(), "dd\ mmm\ yyyy H\hnn") & ".pdf"
     
            Case Is <> ""
                Criteria = "select * from [tmpdetailsterriers] where exploitant='" & Apos(Me!cboExploitantTerriers) & "' order by idsuggestion"
                strNomDocument = "Liste suggestions de terriers exploitant : " & Me!cboExploitantTerriers & " au " & Format(Now(), "dd\ mmm\ yyyy H\hnn") & ".pdf"
     
            End Select
     
        Case "rptdetailsterriersparparcelles"
     
            nomEtat = "rptdetailsterriersparparcelles"
     
        Select Case Me.cboExploitantTerriers
     
            Case Is = ""
                Criteria = "select * from [tmpdetailsterriers] order by idsuggestion"
                strNomDocument = "Liste suggestions de terriers par parcelles au " & Format(Now(), "dd\ mmm\ yyyy H\hnn") & ".pdf"
     
            Case Is <> ""
                Criteria = "select * from [tmpdetailsterriers] where exploitant='" & Apos(Me!cboExploitantTerriers) & "' order by idsuggestion"
                strNomDocument = "Liste suggestions de terriers par parcelles et exploitant : " & Me!cboExploitantTerriers & " au " & Format(Now(), "dd\ mmm\ yyyy H\hnn") & ".pdf"
     
            End Select
     
    End Select
     
    'ouvre une boite de dialogue
     
    Set oFD = Application.FileDialog(msoFileDialogSaveAs)
     
    With oFD
     
        'Paramètrage de la boite de dialogue
        'Affichage en mode liste
        .InitialView = msoFileDialogViewList
        'Nom du fichier par défaut
        .InitialFileName = strNomDocument
        'Titre de la fenêtre
        .Title = "Exporter la liste des suggestions de terriers en PDF"
        'Affiche la boîte et récupère le chemin du fichier
        If .Show Then
            If .SelectedItems.Count > 0 Then
                strChemin = .SelectedItems(1)
        End If
        End If
     
    End With
     
                'Ouvre l'état actif dans la fenêtre
                Debug.Print nomEtat, strNomDocument
                DoCmd.OpenReport nomEtat, acViewPreview, Criteria
                'Enregistre l'état
                 DoCmd.OutputTo acOutputReport, , "PDF", strChemin
     
     
     
    End Sub

  2. #2
    Expert éminent sénior
    Avatar de tee_grandbois
    Homme Profil pro
    retraité
    Inscrit en
    Novembre 2004
    Messages
    8 648
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 67
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : retraité

    Informations forums :
    Inscription : Novembre 2004
    Messages : 8 648
    Points : 14 626
    Points
    14 626
    Par défaut
    bonsoir,
    je ne connais pas les formulaires de navigation mais je pense que cela fonctionne à peu près comme les formulaires classiques donc, en ajoutant Debug.Print Me.SFNavTerriers.SourceObject tu devrais obtenir État.rptdetailsterriersparexploitants et pas rptdetailsterriersparexploitants
    Quand on est derrière l'écran on n'a aucun clavier sous les mains ...
    ah non ? donc devant l'écran c'est la connectique ?

  3. #3
    Membre actif
    Homme Profil pro
    Inscrit en
    Janvier 2011
    Messages
    1 092
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Janvier 2011
    Messages : 1 092
    Points : 268
    Points
    268
    Par défaut
    Merci pour cette réponse qui s'avérait être la bonne

    Cependant je ne comprends pas cette confusion :

    Access ne demande pas obligatoirement de mettre en préfixe "form.nom du form" lorsqu'il s'agit d'un formulaire par contre il faut obligatoirement préciser "état.[nom de l' état] ou est la logique ?

  4. #4
    Expert éminent sénior
    Avatar de tee_grandbois
    Homme Profil pro
    retraité
    Inscrit en
    Novembre 2004
    Messages
    8 648
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 67
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : retraité

    Informations forums :
    Inscription : Novembre 2004
    Messages : 8 648
    Points : 14 626
    Points
    14 626
    Par défaut
    Citation Envoyé par clickandgo Voir le message
    Access ne demande pas obligatoirement de mettre en préfixe "form.nom du form" lorsqu'il s'agit d'un formulaire par contre il faut obligatoirement préciser "état.[nom de l' état] ou est la logique ?
    Il ne demande rien, c'est la conception qui est faite ainsi ... Dans le cas d'uns contrôle sous-formulaire/sous-état, tu peux mettre tous les types d'objets y compris les tables et les requêtes (et oui !):

    Nom : _ajouter_SF_SE.JPG
Affichages : 200
Taille : 44,6 Ko

    c'est uniquement si l'objet choisi n'est pas un formulaire qu'il gardera le type de l'objet:

    Nom : _ajouter_SF_SE2.JPG
Affichages : 173
Taille : 19,2 Ko
    Par contre, pour un état, tous les objets sont typés, je te le concède ...
    Quand on est derrière l'écran on n'a aucun clavier sous les mains ...
    ah non ? donc devant l'écran c'est la connectique ?

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

Discussions similaires

  1. [XL-2000] Concatener (jour, mois, année), mais non reconnu en tant que date
    Par wyzer dans le forum Macros et VBA Excel
    Réponses: 3
    Dernier message: 20/03/2010, 14h08
  2. [POO] Objet non reconnu en tant que tel
    Par T`lash dans le forum Langage
    Réponses: 6
    Dernier message: 08/09/2008, 20h12
  3. tant que non fin de fichier
    Par magicbisous-nours dans le forum SQL
    Réponses: 4
    Dernier message: 19/12/2007, 07h04
  4. [Pétition] Non à MS Office OpenXML en tant que standard ISO
    Par ®om dans le forum La taverne du Club : Humour et divers
    Réponses: 21
    Dernier message: 30/08/2007, 07h43
  5. Une bibliographie en tant que chapitre non numéroté
    Par Kurisu dans le forum Bibliographies - Index - Glossaires
    Réponses: 1
    Dernier message: 18/10/2006, 20h52

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