Déclaration de fonction

Résolu
PROTEUS91 Messages postés 156 Date d'inscription mardi 4 novembre 2003 Statut Membre Dernière intervention 28 décembre 2010 - 18 janv. 2005 à 23:03
crenaud76 Messages postés 4172 Date d'inscription mercredi 30 juillet 2003 Statut Membre Dernière intervention 9 juin 2006 - 20 janv. 2005 à 10:46
J'ai un mega probleme et je ne m'en sors pas... Si quelqu'un peu m'aider j'achéte je m'explique. Je voudrai passer de ca :

Public Sub
UPDATE_NEW_ENTRY(DATA_FORM As Form, DIRC_FORM As Form, NB_FIELDS As Integer,
Optional TXT_TEST0 As String, Optional TXT_TEST1 As String, Optional TXT_TEST2
As String, Optional TXT_TEST3 As String, Optional TXT_TEST4 As String, Optional
TXT_TEST5 As String, Optional TXT_TEST6 As String, Optional TXT_TEST7 As
String, Optional TXT_TEST8 As String)




à ca :

Public Sub
UPDATE_NEW_ENTRY(DATA_FORM As Form, DIRC_FORM As Form, NB_FIELDS As Integer,
Optional TXT_TEST() As String)





Le probleme c'est que quand je rappel cette fonction
UPDATE_NEW_ENTRY, il ne m'ouvre qu'une seule Variable TXT_TEST() et
rien d'autre Alors que moi j'en veux 9.



Si quelqu'un me trouve une solution je serai heureux. J'en ai marre de me prendre la tete lol Merci d'avance a tout le monde.



PROTEUS

5 réponses

crenaud76 Messages postés 4172 Date d'inscription mercredi 30 juillet 2003 Statut Membre Dernière intervention 9 juin 2006 28
19 janv. 2005 à 11:01
Et pourquoi pas ca :

Public Sub UPDATE_NEW_ENTRY(DATA_FORM As Form, DIRC_FORM As Form, NB_FIELDS As Integer, Optional paramarray TXT_TEST() As variant)
Dim i as long
For i = lcase(txt_test) to ubound(txt_test)
Msgbox txt_test(i)
Next
End Sub


Christophe R
3
PROTEUS91 Messages postés 156 Date d'inscription mardi 4 novembre 2003 Statut Membre Dernière intervention 28 décembre 2010
19 janv. 2005 à 18:40
A crenaud76


Le code était presque parfait, seul truc que tu as mis en trop c'est le
Optional : Public Sub UPDATE_NEW_ENTRY(DATA_FORM As Form, DIRC_FORM As
Form, NB_FIELDS As Integer, ParamArray TXT_TEST
() As Variant)



Et la ca marche niquel. Merci a tous. Et merci Renaud pour l'orientation de l'idée. Gobillot ta solution de choisir la classe object, ne resolvé pas mon probleme mais merci quand meme.


PROTEUS
3
Gobillot Messages postés 3140 Date d'inscription vendredi 14 mai 2004 Statut Membre Dernière intervention 11 mars 2019 34
19 janv. 2005 à 00:36
Public Sub UPDATE_NEW_ENTRY(DATA_FORM As Form, DIRC_FORM As Form, NB_FIELDS As Integer, Optional TXT_TEST As Object)
- - - - - - - - - - - - - - - - - -
MsgBox TXT_TEST(0).Text
MsgBox TXT_TEST(1).Text
- - - - - - - - - - - - - - - - - -
End Sub

Daniel
0
Gobillot Messages postés 3140 Date d'inscription vendredi 14 mai 2004 Statut Membre Dernière intervention 11 mars 2019 34
19 janv. 2005 à 19:31
j'ai dû mal comprendre alors, je croyais que tu voulais passer un groupe de contrôle
parceque pour un Tableau de String, ta fonction était bonne:

Private Sub Command1_Click()
Dim txt() As String
ReDim txt(2)
txt(0) = "aaa"
txt(1) = "bbb"
txt(2) = "ccc"
UPDATE_NEW_ENTRY txt
End Sub


Private Sub UPDATE_NEW_ENTRY(T() As String)
Dim i As Integer
For i = 0 To UBound(T)
MsgBox T(i)
Next
End Sub

Daniel
0

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

Posez votre question
crenaud76 Messages postés 4172 Date d'inscription mercredi 30 juillet 2003 Statut Membre Dernière intervention 9 juin 2006 28
20 janv. 2005 à 10:46
Excuse pour le optional en trop mais j'ai pondu cela de mémoire, sans VB sous la main pour tester

Christophe R
0
Rejoignez-nous