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 :

Plantage de l'éditeur VBA


Sujet :

Access

  1. #1
    Membre du Club
    Profil pro
    Inscrit en
    Mai 2006
    Messages
    46
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2006
    Messages : 46
    Points : 40
    Points
    40
    Par défaut Plantage de l'éditeur VBA
    Bonjour !!

    Alors voila mon problème. Je travaille sur une appli Access depuis un moment, et travaillant seul sur l'appli en local je me suis dit pas besoin de faire de sauvegarde (oui je sais ce n'est pas bien). Et la, ce matin j'ai modifié le code et l'éditeur VBA ne se lance plus, Access plante complétement. Je sais de quel formulaire ça vient, je peux l'éditer mais pas le lancer. Je ne peux pas le modifier, supprimer des éléments ou en ajouter. J'ai essayer de tout importer dans un nouveau fichier mdb, mais ca plante sur ce formulaire. Ca doit faire 2 ou 3 semaines que je bosse uniquement sur ce formulaire, vous comprendrez sûrement mon désir de récuperer le code !

    J'ai vu un post similaire concernant Access 2003, mais il n'y a pas de solution dans celui-ci. Je suis sur Access 2002 avec une version de base de données en 2000.

    Donc en conclusion, si quelqu'un peut m'aider !! Help !
    Sinon connaissez vous un logiciel qui permet de récupérer le code d'un fichier mdb ??
    Merci

  2. #2
    Expert éminent sénior

    Avatar de Tofalu
    Homme Profil pro
    Technicien maintenance
    Inscrit en
    Octobre 2004
    Messages
    9 501
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France, Ain (Rhône Alpes)

    Informations professionnelles :
    Activité : Technicien maintenance
    Secteur : Associations - ONG

    Informations forums :
    Inscription : Octobre 2004
    Messages : 9 501
    Points : 32 311
    Points
    32 311
    Par défaut
    Je pense que tu es parti pour tout recommencer. Si tu veux récupérer le formulaire (mais pas le code ).

    Fixe la propriété Avec module du formulaire à Non, et importe le dans une nouvelle base. Essaye ensuite d'accéder au code dans la première base mais je doute que ça fonctionne. Tu auras au moins récupérer l'interface

  3. #3
    Membre du Club
    Profil pro
    Inscrit en
    Mai 2006
    Messages
    46
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2006
    Messages : 46
    Points : 40
    Points
    40
    Par défaut
    J'ai essayé de mettre la propriété Avec Module à Non, mais quand j'enregistre le formulaire, Access plante... Du coup la propriété reste à oui

  4. #4
    Expert éminent sénior

    Avatar de Tofalu
    Homme Profil pro
    Technicien maintenance
    Inscrit en
    Octobre 2004
    Messages
    9 501
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France, Ain (Rhône Alpes)

    Informations professionnelles :
    Activité : Technicien maintenance
    Secteur : Associations - ONG

    Informations forums :
    Inscription : Octobre 2004
    Messages : 9 501
    Points : 32 311
    Points
    32 311
    Par défaut
    Ben tu as plus qu'à tout refaire

  5. #5
    Membre du Club
    Profil pro
    Inscrit en
    Mai 2006
    Messages
    46
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2006
    Messages : 46
    Points : 40
    Points
    40
    Par défaut
    Vu que je peux ouvrir l'ancien formulaire en mode création, j'ai pu faire un copier-coller des éléments, comme ça j'ai quand même gardé l'interface... Mais il me reste le code
    y'a du taf !!

    En tt cas merci

  6. #6
    Expert confirmé

    Profil pro
    Inscrit en
    Mai 2005
    Messages
    3 419
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2005
    Messages : 3 419
    Points : 4 297
    Points
    4 297
    Par défaut
    tu as essayé de lancer une compilation depuis un module standard ?

  7. #7
    Expert confirmé

    Profil pro
    Inscrit en
    Mai 2005
    Messages
    3 419
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2005
    Messages : 3 419
    Points : 4 297
    Points
    4 297
    Par défaut
    si tu te contentes d'ouvrir le formulaire tu es déjà en erreur ?

  8. #8
    Expert confirmé

    Profil pro
    Inscrit en
    Mai 2005
    Messages
    3 419
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2005
    Messages : 3 419
    Points : 4 297
    Points
    4 297
    Par défaut
    tu crées une table nommée rtest avec un champ ligne texte 255
    null autorisé et champ vide autorisé
    tu ouvres ton formulaire en mode modif
    tu te places en mode vba
    tu copies ceci
    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
     
    Sub recupcode(nomform As String)
    Dim mabase As DAO.Database
    Dim matable As DAO.Recordset
    Dim boucle As Long
    Dim mdl As Module
    Set mdl = Modules(nomform)
    Set mabase = CurrentDb()
    Set matable = mabase.OpenRecordset("rtest")
    For boucle = 1 To mdl.CountOfLines
    matable.AddNew
    matable![ligne] = mdl.Lines(boucle, 1)
    matable.Update
    Next boucle
    End Sub


    tu tapes call recupcode("form_nomdureport") dans la fenêtre d'éxécution

  9. #9
    Membre du Club
    Profil pro
    Inscrit en
    Mai 2006
    Messages
    46
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2006
    Messages : 46
    Points : 40
    Points
    40
    Par défaut
    Merci, ca à l'air super, mais le souci c'est que je ne peux pas acceder à l'éditeur vba depuis n'importe quelle form ou depuis le menu principal. Donc comment puis-je faire pour taper ton code ?? Avec la form qui pose problème je ne peux que l'ouvrir en mode création, et dès que j'essai d'enregistrer quelque modif, Access plante. Je ne peux ni supprimer ni ajouter des controls.

  10. #10
    Expert confirmé

    Profil pro
    Inscrit en
    Mai 2005
    Messages
    3 419
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2005
    Messages : 3 419
    Points : 4 297
    Points
    4 297
    Par défaut
    accèdes tu à vba si ta forme est fermée ?

  11. #11
    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
    Si tu as encore VBA dans Excel, tu peux tester ce code, je viens de le faire fonctionner ...

    il faut quand meme ajouter la référence Microsoft Access X.0 Object Library
    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
    Sub GetAccessModule()
    
    Dim appAcc As Access.Application
    Dim mdl As Access.Module
    Set appAcc = GetObject("H:\MaBase.mdb")
    
    ' les noms de module de classe de forms sont précédés
    '  par un Form_
    Set mdl = appAcc.Modules("Form_NomduForm")
    
    For i = 1 To mdl.CountOfLines
        Debug.Print mdl.Lines(i, 1)
    Next i
    
    Set mdl = Nothing
    appAcc.CloseCurrentDatabase
    Set appAcc = Nothing
    
    End Sub

  12. #12
    Membre du Club
    Profil pro
    Inscrit en
    Mai 2006
    Messages
    46
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2006
    Messages : 46
    Points : 40
    Points
    40
    Par défaut
    En faisant un petit mix des bouts de codes de cafeine et random, j'ai réussi depuis un nouveau fichier Access à parcourir la collection Modules de mon application défectueuse. Je me suis rendu compte, que le module correspondant à mon formulaire n'y était pas.
    Je pense donc que c'est pas possible de récupérer le code. En tout cas merci beaucoup pour votre aide, j'ai appris des trucs sympas !

    Bonne continuation !!

  13. #13
    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
    Citation Envoyé par DodoDAix
    En faisant un petit mix des bouts de codes de cafeine et random, j'ai réussi depuis un nouveau fichier Access à parcourir la collection Modules de mon application défectueuse. Je me suis rendu compte, que le module correspondant à mon formulaire n'y était pas.
    Je pense donc que c'est pas possible de récupérer le code. En tout cas merci beaucoup pour votre aide, j'ai appris des trucs sympas !

    Bonne continuation !!
    même préfixé par Form_ ?

    dommage ...

  14. #14
    Expert confirmé

    Profil pro
    Inscrit en
    Mai 2005
    Messages
    3 419
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2005
    Messages : 3 419
    Points : 4 297
    Points
    4 297
    Par défaut
    commence par regarder dans l'explorateur d'objet
    pour ce faire
    ouvre une base vierge
    en mode vba module ajoute la référence à ta base
    et regarde les modules présents avec leurs noms

  15. #15
    Membre du Club
    Profil pro
    Inscrit en
    Mai 2006
    Messages
    46
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2006
    Messages : 46
    Points : 40
    Points
    40
    Par défaut
    Quand j'ouvre une nouvelle base, et que j'ajoute en référence la mienne, Access plante. Décidement... tan pis

Discussions similaires

  1. [OL-2007] Plantage de l'éditeur VBA
    Par basto dans le forum Outlook
    Réponses: 0
    Dernier message: 27/02/2013, 18h13
  2. [?] Ouvrir l'éditeur VBA
    Par Commodore dans le forum Macros et VBA Excel
    Réponses: 5
    Dernier message: 11/06/2007, 14h57
  3. Comment numéroter les lignes dans l'éditeur VBA
    Par Adrian dans le forum VBA Access
    Réponses: 11
    Dernier message: 17/05/2007, 22h55
  4. Réponses: 2
    Dernier message: 04/04/2007, 15h53
  5. [Access 03] Plantage de l'éditeur VBA
    Par 973thom dans le forum Access
    Réponses: 13
    Dernier message: 22/06/2006, 16h45

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