Pour cela, j'écris une fonction globale qui devrait calculer la somme des
fournitures.
J'ai un formulaire en mode feuille de données qui recense toutes les
fournitures. J'en ai pusieurs en fait.
Je voudrais alors passer un formulaire en paramètre dans ma fonction Somme
.Mon passage en paramètre pour l'instant me renvoie des erreurs du style
"incompatibilité de données" ou "impossible de trouver le formulaire auquel
vous fates reférence"
Comment le passer en paramètre proprement en utilisant une variable???
Dans ma fonction somme, je fais une boucle qui parcourt tout mon formulaire
jusqu'à la fin.
Est ce possible d'émette la condition de fin de formulaire sans passer par
la méthode openRecordset?
Cette action est irreversible, confirmez la suppression du commentaire ?
Signaler le commentaire
Veuillez sélectionner un problème
Nudité
Violence
Harcèlement
Fraude
Vente illégale
Discours haineux
Terrorisme
Autre
Eric
Bonjour,
Je n'ai pas bien saisi ce que tu veux faire mais cet petit exemple peut-il t'aider ?
' A typer en fonction des besoins ' Charger la référence Microsoft DAO 3.x Object Library
Function fnSomme(NomForm As String, NomChamp As String) As Currency ' Calcule la somme d'un champ d'un formulaire passés en paramètres ' Implique que le formulaire soit ouvert. ' Ajouter une gestion d'erreurs Dim f As Form, total As Currency Dim rs As DAO.Recordset Set f = Forms(NomForm) Set rs = f.Recordset If Not rs.BOF Then rs.MoveFirst Do Until rs.EOF total = total + Nz(rs.Fields(NomChamp)) rs.MoveNext Loop fnSomme = total MsgBox fnSomme ' ou à mettre en source d'un contrôle de type zone de texte ' =fnSomme("Test2";"HT") End If Set rs = Nothing Set f = Nothing End Function
Bonjour
Je fais actuellement un stage en access.
Pour cela, j'écris une fonction globale qui devrait calculer la somme des fournitures. J'ai un formulaire en mode feuille de données qui recense toutes les fournitures. J'en ai pusieurs en fait. Je voudrais alors passer un formulaire en paramètre dans ma fonction Somme .Mon passage en paramètre pour l'instant me renvoie des erreurs du style "incompatibilité de données" ou "impossible de trouver le formulaire auquel vous fates reférence"
Comment le passer en paramètre proprement en utilisant une variable???
Dans ma fonction somme, je fais une boucle qui parcourt tout mon formulaire jusqu'à la fin.
Est ce possible d'émette la condition de fin de formulaire sans passer par la méthode openRecordset?
Je n'ai pas bien saisi ce que tu veux faire mais cet petit exemple
peut-il t'aider ?
' A typer en fonction des besoins
' Charger la référence Microsoft DAO 3.x Object Library
Function fnSomme(NomForm As String, NomChamp As String) As Currency
' Calcule la somme d'un champ d'un formulaire passés en paramètres
' Implique que le formulaire soit ouvert.
' Ajouter une gestion d'erreurs
Dim f As Form, total As Currency
Dim rs As DAO.Recordset
Set f = Forms(NomForm)
Set rs = f.Recordset
If Not rs.BOF Then
rs.MoveFirst
Do Until rs.EOF
total = total + Nz(rs.Fields(NomChamp))
rs.MoveNext
Loop
fnSomme = total
MsgBox fnSomme
' ou à mettre en source d'un contrôle de type zone de texte
' =fnSomme("Test2";"HT")
End If
Set rs = Nothing
Set f = Nothing
End Function
Bonjour
Je fais actuellement un stage en access.
Pour cela, j'écris une fonction globale qui devrait calculer la somme des
fournitures.
J'ai un formulaire en mode feuille de données qui recense toutes les
fournitures. J'en ai pusieurs en fait.
Je voudrais alors passer un formulaire en paramètre dans ma fonction Somme
.Mon passage en paramètre pour l'instant me renvoie des erreurs du style
"incompatibilité de données" ou "impossible de trouver le formulaire auquel
vous fates reférence"
Comment le passer en paramètre proprement en utilisant une variable???
Dans ma fonction somme, je fais une boucle qui parcourt tout mon formulaire
jusqu'à la fin.
Est ce possible d'émette la condition de fin de formulaire sans passer par
la méthode openRecordset?
Merci d'avance
Dans ma fonction somme, je
--
A+
Eric
http://www.mpfa.info/
Archives : http://groups.google.fr/group/microsoft.public.fr.access?hl=fr
Je n'ai pas bien saisi ce que tu veux faire mais cet petit exemple peut-il t'aider ?
' A typer en fonction des besoins ' Charger la référence Microsoft DAO 3.x Object Library
Function fnSomme(NomForm As String, NomChamp As String) As Currency ' Calcule la somme d'un champ d'un formulaire passés en paramètres ' Implique que le formulaire soit ouvert. ' Ajouter une gestion d'erreurs Dim f As Form, total As Currency Dim rs As DAO.Recordset Set f = Forms(NomForm) Set rs = f.Recordset If Not rs.BOF Then rs.MoveFirst Do Until rs.EOF total = total + Nz(rs.Fields(NomChamp)) rs.MoveNext Loop fnSomme = total MsgBox fnSomme ' ou à mettre en source d'un contrôle de type zone de texte ' =fnSomme("Test2";"HT") End If Set rs = Nothing Set f = Nothing End Function
Bonjour
Je fais actuellement un stage en access.
Pour cela, j'écris une fonction globale qui devrait calculer la somme des fournitures. J'ai un formulaire en mode feuille de données qui recense toutes les fournitures. J'en ai pusieurs en fait. Je voudrais alors passer un formulaire en paramètre dans ma fonction Somme .Mon passage en paramètre pour l'instant me renvoie des erreurs du style "incompatibilité de données" ou "impossible de trouver le formulaire auquel vous fates reférence"
Comment le passer en paramètre proprement en utilisant une variable???
Dans ma fonction somme, je fais une boucle qui parcourt tout mon formulaire jusqu'à la fin.
Est ce possible d'émette la condition de fin de formulaire sans passer par la méthode openRecordset?