Précédent   Forum des professionnels en informatique > Logiciels > Microsoft Office > Général VBA
Général VBA Forum général VBA . Pour les logiciels spécifiques (Access, Excel, Word, ...), postez dans les bons sous forums.
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 08/12/2011, 19h13   #1
Membre chevronné
 
Inscription : janvier 2006
Messages : 916
Détails du profil
Informations forums :
Inscription : janvier 2006
Messages : 916
Points : 733
Points : 733
Par défaut Tester si un élément est dans paramArray

Bonjour

J'ai une fonction à arguments variables dont la structure est la suivante

Code :
1
2
3
4
5
6
7
8
 
Function mafonction(arg1 As Long, ParamArray tableau() As Variant)
 
If UBound(etatsReporting) = -1 Or Belongs("toto", etatsReporting) Then
'des trucs
end if
 
end function
où Belongs est une fonction qui teste l'appartenance à un tableau, le code est (reprenez-le si nécessaire)
Code :
1
2
3
4
5
6
7
8
9
10
'Renvoie true si un element appartient à un tableau
Function Belongs(Item, MyArray As Variant) As Boolean
    Dim Member
    Belongs = False
    If Not IsNull(MyArray) Then
        For Each Member In MyArray
            If Item = Member Then Belongs = True: Exit Function
        Next
    End If
End Function
Le problème est que j'ai l'erreur "utilisation incorrecte de ParamArray" quand j'appelle ma fonction comme ceci :
Quelqu'un saurait-il m'expliquer pourquoi ?

Merci d'avance
guidav est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 08/12/2011, 20h20   #2
Expert Confirmé
 
Homme Philippe
ex Observeur CGG / Analyste prog.
Inscription : juin 2006
Messages : 1 714
Détails du profil
Informations personnelles :
Nom : Homme Philippe
Localisation : France, Finistère (Bretagne)

Informations professionnelles :
Activité : ex Observeur CGG / Analyste prog.

Informations forums :
Inscription : juin 2006
Messages : 1 714
Points : 3 654
Points : 3 654
Sakut, à lire http://silkyroad.developpez.com/vba/tableaux/#LX , si ce n'est pas déjà fait
__________________
Pensez à Voter, d'avance merci. ( Pouces en bas à la droite de Citer )
Balisez votre code après l'avoir indenté sous Excel via Smart Indenter
Autre utilitaire : MZ Tools 3.0 VBA

Contribution : Excel / Word / PDF avec Adobe Acrobat Pro / PDFCreator 1 2
kiki29 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 09/12/2011, 09h35   #3
Membre chevronné
 
Inscription : janvier 2006
Messages : 916
Détails du profil
Informations forums :
Inscription : janvier 2006
Messages : 916
Points : 733
Points : 733
Merci, déjà lu
guidav est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 31/12/2011, 17h36   #4
Expert Confirmé Sénior
 
Avatar de Qwazerty
 
Homme Stéphane
La très haute tension :D
Inscription : avril 2002
Messages : 2 446
Détails du profil
Informations personnelles :
Nom : Homme Stéphane
Âge : 32
Localisation : France

Informations professionnelles :
Activité : La très haute tension :D
Secteur : Service public

Informations forums :
Inscription : avril 2002
Messages : 2 446
Points : 4 620
Points : 4 620
Envoyer un message via MSN à Qwazerty
Salut

Ben relit le alors

Citation:
ParamArray:
* Doit obligatoirement être déclaré en type Variant.
* Ne peut pas coexister avec des arguments Optional.
* Doit être placé en dernière position dans la liste des arguments.
* Les arguments ne sont pas facultatifs.
* Chaque argument peut être d'un type de données différent.
* Le nombre d'arguments n'est pas limité.
* L'indice inférieur du tableau est toujours 0.
++
Qwaz
__________________

MagicQwaz := Harry Potter la baguette en moins
Le monde dans lequel on vit
HammerFest
Ma page perso DVP - Dernier Tutoriel : VBA & Internet Explorer
Qwazerty est déconnecté   Envoyer un message privé Réponse avec citation 20
Réponse Proposer ce sujet en actualité
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 01h07.


 
 
 
 
Partenaires

Hébergement Web