Impossible essayer exécuter une procédure

Résolu
VBA Beginner XX -  
 VBA Beginner XX -
Bonjour,

Impossible de lancer ma procédure qui s'arrête avec le message erreur : "Erreur de compilation : type par l'utilisateur non défini". Je veux juste l'exécuter de temps en temps en l'écrivant pour être sûr de ce que je fais.

Le problème est que cela s'arrête (surlignage jaune) dès la première ligne de mon code où il y a simplement :

Sub NomProcédure ()

Je ne comprends donc pas le message d'erreur ...

Merci !

5 réponses

jordane45 Messages postés 38486 Date d'inscription   Statut Modérateur Dernière intervention   4 752
 
Bonjour

tu peux nous montrer le code complet ?
De plus.. ne mets pas de caractères accentués dans le nom de ta procedure ni dans le nom de tes variables
0
Utilisateur anonyme
 
Bonjour,

Il ne doit pas y avoir d'espace entre le dernier caractère
du nom de la procédure et la parenthèse gauche :

Sub NomProcédure()
End Sub

Cordialement.  😊
 
0
VBA Beginner XX
 
En réalité, je n'ai écris que ceci (comme l'arrêt était fait sur le sub, je pensais que l'erreur ne portait que là-dessus, ce n'est pas vrai ?), la procédure n'est pas finie bien sur, je souhaite piloter excel depuis vba access :
Sub ImportBG()


Dim xlApp As Excel.Application

' Créer un objet Excel
' (ce qui équivaut à démarrer Excel à distance)
Set xlApp = CreateObject("Excel.Application")

With xlApp
   ' Rendre Excel visible
    .Visible

    Dim FiletoOpen As String
    
             'récupération du nom et du chemin du fichier 'POSS BEUG CAR XLS ET MTN XLSX
            FiletoOpen = .Application.GetOpenFilename("xls Files (*.), *.xls")
            .Workbooks.Open " filetoopen"
    
            
  


End With


End Sub


EDIT : Ajout des balises de code (la coloration syntaxique).
Explications disponibles ici :ICI

Merci d'y penser dans tes prochains messages.
0
jordane45 Messages postés 38486 Date d'inscription   Statut Modérateur Dernière intervention   4 752
 
Heu.. pour commencer .... place les déclarations de tes variables AU DEBUT de ta sub (avant toute autre instruction)

Par exemple :
Sub ImportBG()
 Dim FiletoOpen As String
 Dim xlApp As Excel.Application

et pas n'importe où dans ton code....

Pour le code.. essaye un truc du genre : ( nb : je n'ai pas d'access sous la main pour tester)
Sub ImportBG()

    Dim FiletoOpen As String
    Dim xlApp As Excel.Application

    ' Créer un objet Excel
    ' (ce qui équivaut à démarrer Excel à distance)
    Set xlApp = CreateObject("Excel.Application")

   ' Rendre Excel visible
    xlApp.Visible = True
   
    'récupération du nom et du chemin du fichier 'POSS BEUG CAR XLS ET MTN XLSX
    FiletoOpen = xlApp.Application.GetOpenFilename("xls Files (*.), *.xls")
    xlApp.Workbooks.Open FiletoOpen
                
End Sub
0
VBA Beginner XX
 
J'ai essayé et toujours le même problème ... J'ai l'impression que c'est l'ouverture d'Excel à distance qui beug.
0
jordane45 Messages postés 38486 Date d'inscription   Statut Modérateur Dernière intervention   4 752 > VBA Beginner XX
 

l'ouverture d'Excel à distance qui beug.

Qu'appeles tu " à distance " ???

J'ai testé ce code depuis un excel .. et il marche...
Après.. depuis access je n'en sais rien !
0
VBA Beginner XX > jordane45 Messages postés 38486 Date d'inscription   Statut Modérateur Dernière intervention  
 
Le code fonctionne aussi en VBA Excel mais pas VBA Access ... D'où le fait d'être depuis Access pour pitoler l'ouverture d'Excel à distance qui semble être le problème !
0
VBA Beginner XX
 
En revanche je ne comprends pas pourquoi ma méthode "with" et les points en fonctionnent pas.
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
VBA Beginner XX
 
Non c'est bon en fait !! Merci !
0