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

Runtime Discussion :

[Formulaire] code VBA et runtime Access


Sujet :

Runtime

  1. #1
    Membre régulier
    Profil pro
    Inscrit en
    Octobre 2006
    Messages
    218
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France, Gironde (Aquitaine)

    Informations forums :
    Inscription : Octobre 2006
    Messages : 218
    Points : 77
    Points
    77
    Par défaut [Formulaire] code VBA et runtime Access
    Bonjour,
    Ma boite utilise Access runtime, et je leur ait programmé un p'tit code VBA de rien du tout, pour que en cochant une case, la date se mette, et les gens qui utilisent la base avce ce runtime on une fenetre VBA qui s'ouvre et des messages...



    Est-ce normal!!??
    ou alors ils utilisent une versiond es runtimes qui dateraient de l'antiquité!!!!
    J'ai le fichier d'install... mais pas de readme pour avoir la version...

    Microsoft limite -il les runtimes??? en bloquant le VBA?? pour faire acheter des licenses Access???

    Merci

  2. #2
    Expert éminent
    Avatar de cafeine
    Inscrit en
    Juin 2002
    Messages
    3 904
    Détails du profil
    Informations forums :
    Inscription : Juin 2002
    Messages : 3 904
    Points : 6 781
    Points
    6 781
    Par défaut
    Hello,

    comme souvent ... il faudrait voir ce fameux bout de code pour en savoir plus.

    et ce avant de polémiquer sur la politique de licences Microsoft.

  3. #3
    Membre régulier
    Profil pro
    Inscrit en
    Octobre 2006
    Messages
    218
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France, Gironde (Aquitaine)

    Informations forums :
    Inscription : Octobre 2006
    Messages : 218
    Points : 77
    Points
    77
    Par défaut bout de code:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    me.NOM_DE_MON_CHAMP = date
    sur l'evenement "on click"

    quoi de plus banal!!??

  4. #4
    Membre régulier
    Profil pro
    Inscrit en
    Octobre 2006
    Messages
    218
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France, Gironde (Aquitaine)

    Informations forums :
    Inscription : Octobre 2006
    Messages : 218
    Points : 77
    Points
    77
    Par défaut precisions
    Je trouve sur un site web, concernant le runtime access:

    La gestion d'erreurs de Visual Basic est nécessaire. Les erreurs qui ne sont pas gérées par le code entraînent l'arrêt de l'application sans aucun avertissement préalable. Pour cette raison, l'emploi des macros n'est pas recommandé.


    Visiblement, c'est ce qui se passe. On declenche un code VBA, une fenetre s'ouvre donne un mesage d'erreur (avec une croix rouge) et on peu que faire OK et ça ferme tout...

    ça rssemble donc au probleme decrit plus haut... sauf que mon code est valide!!??
    il ne peut pas y avoir d'erreur la dessus, donc ça ne devrait pas avoir a appeler le gestionnaire de gtestion d'erreur (absent donc sur le runtime) et ça ne devrait pas planter!!??


    comment je pourrai, eventuellement, faire une gestion d'erreur!!??
    S'il n'y a que cela...


    Par ailleur, j'ai essayé sur le poste d'un collègue qui avait auparavant access sur son poste, et n'a PLSU QUE LE RUNTIME, et là mon code marche!!??
    il y a donc des restes de codes???

    help help help!

  5. #5
    Membre émérite
    Avatar de DelphiManiac
    Homme Profil pro
    Homme à tout faire
    Inscrit en
    Mars 2002
    Messages
    1 147
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 60
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Homme à tout faire
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mars 2002
    Messages : 1 147
    Points : 2 533
    Points
    2 533
    Par défaut
    Il y a de fortes chance que ce soit une référence à une DLL qui ne soit pas disponible sur le poste en question.


    Essaye avec le code suivant :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    me.NOM_DE_MON_CHAMP = VBA.date
    Sinon essaye de voir quelle référence pose problème. Le code suivant fera apparaitre un msgbox si c'est bien un problème de référence.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     
      Dim ref As Reference
     
      For Each ref In References
        If ref.IsBroken = True Then
          MsgBox ref.Guid
        End If
      Next ref

  6. #6
    Membre régulier
    Profil pro
    Inscrit en
    Novembre 2006
    Messages
    98
    Détails du profil
    Informations personnelles :
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations forums :
    Inscription : Novembre 2006
    Messages : 98
    Points : 123
    Points
    123
    Par défaut
    Bonjour,

    J'ai fais le test sur un poste avec runtime, "me.NOM_DE_MON_CHAMP = date" fonctionne bien...

    A+

  7. #7
    Membre régulier
    Profil pro
    Inscrit en
    Octobre 2006
    Messages
    218
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France, Gironde (Aquitaine)

    Informations forums :
    Inscription : Octobre 2006
    Messages : 218
    Points : 77
    Points
    77
    Par défaut ah??
    ça marche bien avec le code
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    me.NOM_DE_MON_CHAMP = VBA.date
    ça veut dire qu'à chaque code VBA qui va me faire planter le runtime, je peux potentielement rajouter VBA. devant ma commande???
    enfin je veux dire, la c'est un exemple de VBA bien basique, tout simple...

    j'ai développé pour mon projet d'etudes une base prospects BOURREE de code VBA dans les formulaires, j'imagine que si le responsable comemrcial veut l'utiliser avec le runtime, je vais avoir le probleme².

  8. #8
    Membre émérite
    Avatar de DelphiManiac
    Homme Profil pro
    Homme à tout faire
    Inscrit en
    Mars 2002
    Messages
    1 147
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 60
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Homme à tout faire
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mars 2002
    Messages : 1 147
    Points : 2 533
    Points
    2 533
    Par défaut
    Citation Envoyé par Frenchguy
    ça marche bien avec le code
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    me.NOM_DE_MON_CHAMP = VBA.date
    ça veut dire qu'à chaque code VBA qui va me faire planter le runtime, je peux potentielement rajouter VBA. devant ma commande???
    enfin je veux dire, la c'est un exemple de VBA bien basique, tout simple...

    j'ai développé pour mon projet d'etudes une base prospects BOURREE de code VBA dans les formulaires, j'imagine que si le responsable comemrcial veut l'utiliser avec le runtime, je vais avoir le probleme².
    Donc si ca marche avec ce code, c'est que c'est bien un problème de références.

    Cela signifie que sur ta machine de developpement, le projet access fait référence à une librairie (dll, ocx) qui n'existe pas sur la machine "runtime".

    Utilise le 2ième bout de code fourni sur la machine runtime et regarde comme indiqué si tu as un msgbox, si oui, note le guid (la chaine de caractère bizare).

    Sur ta machine de dev, execute le code suivant :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     
    Sub test()
      Dim ref As Reference
     
      For Each ref In References
        Debug.Print ref.Guid, ref.Name
      Next ref
    End Sub
    et recherche le GUID qui pose problème, ca te donneras le nom de la librairie qui pose soucis.

    Vu qu'il y a de forte chance que ce soit une librairie par défaut qui ne soit pas utilisée (genre web), il suffit d'aller dans le menu Outils/Références et de décocher la librairie en cause. Après tu redistribues ton appli.

  9. #9
    Membre régulier
    Profil pro
    Inscrit en
    Octobre 2006
    Messages
    218
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France, Gironde (Aquitaine)

    Informations forums :
    Inscription : Octobre 2006
    Messages : 218
    Points : 77
    Points
    77
    Par défaut help
    Le code pour verifier le probleme de réference, si je capte tout bien, sert à donner une msgbox si le champ référence du code est mal orthographié, (ou a été supprimé, ou n'est plus accessibles) c'est ça???
    (peut etre utile... mais vu que ça marche sur access, la réference est forcément bonne... (déduction personnelle, suite a une longue reflexion sur mon "moi access" interieur

  10. #10
    Membre émérite
    Avatar de DelphiManiac
    Homme Profil pro
    Homme à tout faire
    Inscrit en
    Mars 2002
    Messages
    1 147
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 60
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Homme à tout faire
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mars 2002
    Messages : 1 147
    Points : 2 533
    Points
    2 533
    Par défaut
    Le code pour vérifier les références est à exécuter sur la machine "runtime".



    Les références sont un mécanisme d'access qui permet à celui ci de s'interfacer "facilement" avec d'autres applications/librairies.

    Par exemple, tu poses une référence vers Word sur la machine de dev et tu distribue ton application telle quelle. Si le poste runtimle ne possède par word, tu auras le genre d'erreur que tu rencontres. (word ici n'est qu'un exemple bien sur).

    Donc en gros sur ta machine de dev tu as "quelque chose" que access, au travers des références, considère comme nécessaire, et ce "quelque chose", tu ne l'as pas sur la machine runtime.

    Donc il faut trouver ce que c'est et dire à access que ce n'est pas nécessaire ^^.

  11. #11
    Membre régulier
    Profil pro
    Inscrit en
    Octobre 2006
    Messages
    218
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France, Gironde (Aquitaine)

    Informations forums :
    Inscription : Octobre 2006
    Messages : 218
    Points : 77
    Points
    77
    Par défaut aaaaahhhhh
    OK pour ton explication de réferencement!!!
    je vosi un opeu ce que tu veux dire...
    ce soir je fait du debug!!

    ça veut dire que j'ai juste a trouver la DLL associée a mon projet access (bien que je lui ai jamais invitée...) et de la sortir, et sans rien changer d'autre, ça devrai marcher!!!!
    ben... si c'est le cas, c'est cool!! quand meme!!
    ça veut dire que je n'aurai pas TOUT a refaire

  12. #12
    Membre émérite
    Avatar de DelphiManiac
    Homme Profil pro
    Homme à tout faire
    Inscrit en
    Mars 2002
    Messages
    1 147
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 60
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Homme à tout faire
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mars 2002
    Messages : 1 147
    Points : 2 533
    Points
    2 533
    Par défaut
    Citation Envoyé par Frenchguy
    OK pour ton explication de réferencement!!!
    je vosi un opeu ce que tu veux dire...
    ce soir je fait du debug!!

    ça veut dire que j'ai juste a trouver la DLL associée a mon projet access (bien que je lui ai jamais invitée...) et de la sortir, et sans rien changer d'autre, ça devrai marcher!!!!
    ben... si c'est le cas, c'est cool!! quand meme!!
    ça veut dire que je n'aurai pas TOUT a refaire
    C'est exactement ca, Access ajoute des références automatiquement à chaque projet crée et ce, sans te demander quoi que ce soit.

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

Discussions similaires

  1. [AC-2010] Code VBA à implanter sous Access 2010
    Par develalex dans le forum Access
    Réponses: 15
    Dernier message: 07/07/2015, 18h46
  2. [debutant] comment transposer mon code vba excel en access
    Par eclipse012 dans le forum VBA Access
    Réponses: 2
    Dernier message: 15/02/2008, 08h23
  3. Ouvrir formulaires code vba
    Par ThieBEN dans le forum VBA Access
    Réponses: 6
    Dernier message: 17/10/2007, 17h25
  4. Réponses: 4
    Dernier message: 18/04/2007, 16h32
  5. code VBA versus assistant Access
    Par zephyr59 dans le forum Access
    Réponses: 6
    Dernier message: 10/04/2006, 15h04

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