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 :

Projet fini mais problème de VBA [Toutes versions]


Sujet :

VBA Access

  1. #1
    Nouveau membre du Club
    Homme Profil pro
    Technicien de reconditionnement
    Inscrit en
    Mai 2015
    Messages
    21
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Activité : Technicien de reconditionnement

    Informations forums :
    Inscription : Mai 2015
    Messages : 21
    Points : 25
    Points
    25
    Par défaut Projet fini mais problème de VBA
    Bonjour,

    J'ai un soucis de code VBA avec mon projet.

    Pour faire simple, voici mon projet de recherche par référence de vis, par référence de produit, par nom de vis et par référence de vis.
    Le moteur de recherche se fait sur deux onglets. Un pour la recherche par nom (txt) et un autre pour la recherche par référence (numérique).

    L'onglet txt à un filtre avec 5 choix et la possibilité de choisir entre nom de vis ou de produit et l'onglet nombre un seul filtre avec un choix entre référence de vis ou de produit.

    Une zone de texte et un bouton de recherche avec le code VBA.

    Nom : Capture1.PNG
Affichages : 100
Taille : 10,9 Ko

    Quand j'utilise l'onglet "par référence" et le champ "component" et que je rentre la référence au hasard 100001, cela fonctionne. Il me trouve toutes les références de meubles qui contiennent cette vis.

    Par contre si je cherche une référence de meuble ou dans l'onglet "par nom" un simple nom, il m'affiche cette erreur
    Nom : Capture2.PNG
Affichages : 85
Taille : 5,4 Ko

    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
    Private Sub Commande23_Click()
    Dim nomchamp As String
    Listchamptxt.SetFocus
    nomchamp = Listchamptxt.ItemData(Listchamptxt.ListIndex)
    Txt.SetFocus
    DoCmd.OpenForm "FR_VissEquiv" 'ouvrir le formulaire
     
    If FiltreTxT.Value = 1 Then 'égal
     Forms!FR_VissEquiv.RecordSource = "select * from T_VissEquiv where " & nomchamp & _
      "=" & """" & Txt.Value & """" 'modifier la source de données
     ElseIf FiltreTxT.Value = 2 Then 'commence par
      Forms!FR_VissEquiv.RecordSource = "select * from T_VissEquiv where " & nomchamp & _
      " like '" & Txt.Text & "*'"
    ElseIf FiltreTxT.Value = 3 Then 'se termine par
    Forms!FR_VissEquiv.RecordSource = "select * from T_VissEquiv where " & nomchamp & _
    " like '*" & Txt.Text & "'"
    ElseIf FiltreTxT.Value = 4 Then 'contient
    Forms!FR_VissEquiv.RecordSource = "select * from T_VissEquiv where " & nomchamp & _
    " like '*" & Txt.Text & "*'"
    ElseIf FiltreTxT.Value = 5 Then 'différent de
    Forms!FR_VissEquiv.RecordSource = "select * from T_VissEquiv where " & nomchamp & _
    "<>" & """" & Txt.Text & """"
    End If
    End Sub
    Quelque soit le choix il y a une erreur sur toutes les lignes "Forms"

    Je vous met le lien de mon projet téléchargeable ici https://mon-partage.fr/f/0usYSrIE/

    J'espère avoir été compris dans mes propos et que je ne vous aurez pas embrouillé.

    Merci d'avance pour toute aide que vous pourriez m'apporter.

    Vivi

  2. #2
    Modérateur

    Homme Profil pro
    Inscrit en
    Octobre 2005
    Messages
    15 331
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Canada

    Informations forums :
    Inscription : Octobre 2005
    Messages : 15 331
    Points : 23 786
    Points
    23 786
    Par défaut
    Bonjour.

    C'est à cause des blancs dans le nom de ton champ.

    Par sécurité, toujours encadrer les noms de table, de requête ou de champ avec de cochet.

    Ex :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    "select [T_VissEquiv].* from [T_VissEquiv] where [T_VissEquiv].[" & nomchamp & "]=" & """" & Txt.Value & """"
    Et personnellement j'aime bien préfixer mes champs par leur source. Dans du SQL simple cela ne change pas grand chose mais si ta requête est un peu longue et complexe, je trouve que cela aide à la rendre plus compréhensible.

    Et il est recommandé pour les noms internes de se limiter aux lettres majuscules et minuscules non accentuées et non "décorées" (pas de cédille), aux chiffres et aux soulignés (_). Cela évite des bugs sournois.

    A+
    Vous voulez une réponse rapide et efficace à vos questions téchniques ?
    Ne les posez pas en message privé mais dans le forum, vous bénéficiez ainsi de la compétence et de la disponibilité de tous les contributeurs.
    Et aussi regardez dans la FAQ Access et les Tutoriaux Access. C'est plein de bonnes choses.

  3. #3
    Nouveau membre du Club
    Homme Profil pro
    Technicien de reconditionnement
    Inscrit en
    Mai 2015
    Messages
    21
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Activité : Technicien de reconditionnement

    Informations forums :
    Inscription : Mai 2015
    Messages : 21
    Points : 25
    Points
    25
    Par défaut
    Merkiii ! Ca fonctionne !!

    Maintenant go pour l'améliorer ^^

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

Discussions similaires

  1. Access problème VBA sur projet fini
    Par yakudark dans le forum Access
    Réponses: 0
    Dernier message: 31/07/2015, 12h59
  2. 2048 bientôt fini, mais problème d'écouteurs
    Par gulux56 dans le forum EDT/SwingWorker
    Réponses: 3
    Dernier message: 30/04/2014, 15h51
  3. Projet fini mais certains utilisateurs ne peuvent l'ouvrir
    Par Benduroy dans le forum Général Java
    Réponses: 5
    Dernier message: 03/12/2011, 18h02
  4. Problème de VBA de passage de 2000 à 2002
    Par Oberown dans le forum Access
    Réponses: 9
    Dernier message: 10/05/2006, 14h51
  5. problème avec VBA
    Par Delph dans le forum Langage
    Réponses: 2
    Dernier message: 19/08/2002, 13h15

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