Bonjour,
En général avec du temps je trouve toujours ce que je cherche. Mais voilà ça fait maintenant plus de 24 heures que je tourne en rond, sans trouver de solution, donc je m'en remet à vous.
Mon soucis est le suivant, mes fonctions/procédure vba même les plus simples ne fonctionne pas. J'ai copié/collé des exemples du net et mêmes des exemples du F1 et au nom de variable prêt mais rien n'y fait.
Ce qui est bizarre aussi, c'est qu'il ne trouve jamais les "sub" mais uniquement les "function".
Voilà deux exemples:
ici il m'affiche le message correctement et ensuite il me met un message d'erreur :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3 Function AfficherMessage(strMessage As String) MsgBox strMessage End Function
Visual Basic ne peut pas convertir le type de données d'une arguments entrés.
Et je doit arrêter la macro manuellement
Et pour le deuxième j'ai recopié un exemple trouvé sur le net, il m'affiche le message de fin correctement mais la fonction ne fait rien d'autre ... (j'ai juste retiré les me. devant certaines variables sinon la fonction plantait et j'ai remplacer le sub par function pour les mêmes raisons
Enfin voilà, je suis une débutante en VBA donc c'est surement moi qui me trompe à un moment mais je ne vois vraiment pas où... et je commence sérieusement à désespérer... (PS: les bibliothèques sont belle et bien intégré)
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
20
21
22
23
24
25
26
27
28
29
30
31 Function btnOK_Click() ' Quelques variables Dim rst As DAO.Recordset Dim lngNum As Long ' Dim IngUsage As Long ' Ouvrir la table en lecture/écriture Set rst = CurrentDb.OpenRecordset("Attestations", dbOpenDynaset) ' Boucler sur le nombre d'attestations demandées For lngNum = 0 To txtNombreEnregistrements - 1 ' Créer un enregistrement dans la table rst.AddNew ' Alimenter les champs rst("Numéro Attestation") = txtNumeroDepart + lngNum rst("Date Attestation") = txtDateAttestation rst("Usage") = txtUsage rst("Motif") = txtMotif ' Valider rst.Update Next rst.Close Set rst = Nothing MsgBox "Opération terminée !", vbInformation End Function
Merci d'avance pour votre aide
Partager