Probleme d'exécution d'un bouton

Signaler
Messages postés
254
Date d'inscription
jeudi 13 janvier 2005
Statut
Membre
Dernière intervention
10 octobre 2013
-
Messages postés
14008
Date d'inscription
samedi 29 décembre 2001
Statut
Modérateur
Dernière intervention
28 août 2015
-
Bonjour,
j'ai créer un code provisoire afin de tester ma fonction sur click lors d'un formulaire


et il  a une erreur lorsque je click sur le bouton il m'écrit


"L"expression sur clic entrée comme paramètre de la propriété de type évènement est a l'origine d'une erreur Type défini par l'utilisateur non défini.
Le résultat de l'expression n'est pas le nom d'une macro, le nom d'une fonction définie par l'utilisateur ou [Event procédure]


Une erreur a peut être été commise lors de l'évalutation d'une fonction , d'un évène ment ou d'une macro"


mon bouton est configuré sur procédure évènementiel
Si quelqu'un voit l'erreur je le remercie d'avance


    Sub Commande0_Click()
    Dim l As Integer
    l = Ligne()
    DoCmd.TransferSpreadsheet acImport, , CA, "D:\Test\Essai.xls", 0, "K" & i
 
End Sub


Public Function Ligne() As interger




Public AppExcel             As Excel.Application
Private wbFile               As Excel.Workbook
Public i As Integer


Set AppExcel = CreateObject("Excel.Application")  ' Ouverture d'excel
If Not AppExcel Is Nothing Then
        Set wbFile = AppExcel.Workbooks.Open("D:\Test\Essai.xls", False, True) 'Ouverture du classeur
        If Not wbFile Is Nothing Then
           
            Do While Cells(i, 1).Text <> "TOTAL"
            i = i + 1
            Loop
           
             wbFile.Close
             AppExcel.Application.Quit
             Set AppExcel = Nothing
        End If
End If
End Function

1 réponse

Messages postés
14008
Date d'inscription
samedi 29 décembre 2001
Statut
Modérateur
Dernière intervention
28 août 2015
81
Salut
Au 1er coup d'oeil, je vois que normalement ta fonction Ligne devrait renvoyer une valeur.
Or, dans la fonction, je ne vois nulle part de :
Ligne = maValeur (syntaxe en VB6. Il me semble que c'est Return maValeur sous VB.Net)
Donc, dans Commande0_Click, I sera toujours à 0
Est-ce que la fonction DoCmd qui suit accepte une valeur nulle "K0" ? je ne pense pas.

Vala
Jack, MVP VB
NB : Je ne répondrai pas aux messages privés

Champion du monde de boule de cristal - 2005
Le savoir est la seule matière qui s'accroit quand on la partage (Socrate)