Erreur de compilation: end sub attendu

Fermé
Teaocoffee Messages postés 6 Date d'inscription mardi 30 juillet 2013 Statut Membre Dernière intervention 2 août 2013 - 30 juil. 2013 à 09:26
Teaocoffee Messages postés 6 Date d'inscription mardi 30 juillet 2013 Statut Membre Dernière intervention 2 août 2013 - 31 juil. 2013 à 08:51
Bonjour,

Quand je commence à saisir le formulaire, une fenêtre erreur de compilation: end sub attendu apparaît sur la 1ère ligne du code ci-dessous dans la procédure évènementielle avant insertion:

Private Sub Form_BeforeInsert(Cancel As Integer)
Function newnum()
Dim curAnnee As String
curAnnee = Format(Date, "yyyy")

lastnum = DMax("NUM", "table", "NUM like '" & curAnnee & "*'")

If IsNull(lastnum) Then 'pas de n° pour cette année
newnum = curAnnee & "-0001"
Else
newnum = curAnnee & "-" & Format(Right(lastnum, 4) + 1, "0000")
End If

End Function
End Sub

Avez-vous une idée?
Merci beaucoup,

4 réponses

Bonjour,

Il faut retirer les lignes

Function newnum()
End Function

ça devrait fonctionner un peu mieux.
Penses aussi à définir le type de newnum.
1
Teaocoffee Messages postés 6 Date d'inscription mardi 30 juillet 2013 Statut Membre Dernière intervention 2 août 2013
30 juil. 2013 à 11:31
Rebonjour,

Bon, en fait il faut mettre le end sub juste après le sub.
Maintenant le code demande d'entrer la valeur num lors de l'éxecution. J'aimerais que ce n° s'incrémente automatiquement à l'ouverture du formulaire.
Comment faire?
Merci
0
Teaocoffee Messages postés 6 Date d'inscription mardi 30 juillet 2013 Statut Membre Dernière intervention 2 août 2013
30 juil. 2013 à 12:02
Merci de ta réponse. Si j'enlève les lignes, le msg suivant s'affiche: erreur de compilation seuls des commentaires peuvent apparaître après end sub end function ...
Qu'est-ce que ça signifie?
Merci bien
0
Teaocoffee Messages postés 6 Date d'inscription mardi 30 juillet 2013 Statut Membre Dernière intervention 2 août 2013
31 juil. 2013 à 08:51
Salut,

Bon OK pour les msg de compilation. Je voudrais appeler une fonction: call nomfunction mais ça me demande d'entrer la valeur dans le champ correspondant alors que je voudrais que cela se fasse automatiquement. J'ai peut-être oublié qqchose dans le code (cf 1ère question).
Quelqu'un voit?
Merci et bonne journée,
0