Pb IndexOf avc tableau

o-sixty-o Messages postés 25 Statut Membre -  
kij_82 Messages postés 4260 Statut Contributeur -
Bonjour,

J’utilise IndexOf pour retrouver une valeur ds un tableau et cela ne marche pas je ne comprend pas…

Public Function fillTab(s As String, tabl As Integer)
Dim myIndex As Integer
Select Case tabl
Case (1)
myIndex = Array.IndexOf(Etude, s) ç “erreur de syntaxe”

If myIndex <> -1 Then
tailleEtude = tailleEtude + 1
ReDim Preserve Etude(tailleEtude)
Etude(tailleEtude - 1) = s
End If
End select

J’ai également essayé : myIndex = Etude.IndexOf(s) ms cela me dit « qualificateur incorrect » pour Etude… Pr infos Etude est le nom de mon tableau et s c’est le string que je recherche.
A voir également:

4 réponses

kij_82 Messages postés 4260 Statut Contributeur 857
 
Bonjour,

Je ne connais pas ce langage de programmation, mais il me semble que ta variable 'Etude' est inconnu dans le corps de ta fonction, du moins avec les informations que tu as donné.
Si l'erreur en question est du type "erreur de syntaxe" il y a de grandes chances pour que ce soit ça, donc : où as-tu déclaré ta variable 'Etude' ? Si tu ne l'as pas déclarée il faut le faire avant de l'utiliser. Si c'est déjà fait en dehors de cette fonction, alors il faudra la passer en paramètre à cette fonction pour l'utiliser dedans.
0
o-sixty-o Messages postés 25 Statut Membre
 
J'ai définit Etude comme variable globale puisque c'est un tableau... et je vois pas comment jpourrais la mettre en parametre puisqu'il yen a déja 2..
Et puis g 5 tableaux pr lesquels je refais le même code case (1) ... case(2) etc.. donc il faudrait que je rajoute 5 parametres ?? :s ça va pas là lol je vois vraiment pas
0
kij_82 Messages postés 4260 Statut Contributeur 857
 
Si c'est déclarer en global c'est va, c'est quoi au juste comme langage? (je ne connais pas)
Peut-être as tu déclaré en global après ta fonction au lieu d'avant (je sais que dans certains langage ça peut poser problème) ?
0
o-sixty-o Messages postés 25 Statut Membre
 
c'est visual basic pour excel.... et c bon jlai déclaré en option explicit en variable globale o début...
0
kij_82 Messages postés 4260 Statut Contributeur 857
 
Apparemment en visual basic c'est bien cette syntax :
Dim SearchWithinThis As String = "ABCDEFGHIJKLMNOP"
Dim SearchForThis As String = "DEF"
Dim FirstCharacter As Integer = SearchWithinThis.IndexOf(SearchForThis)


Donc à priori c'est ce que tu as fait. Par contre sur cette page :
https://www.microsoft.com/en-us/download/details.aspx?id=55984
il est spécifié qu'il faut spécifier un import System, est ce que tu l'as fait ?
0
kij_82 Messages postés 4260 Statut Contributeur 857
 
Erf autant pour moi j'ai pas regardé la bonne classe :s

Pour la classe Array c'est bien comme tu as fait : Array.IndexOf(myArray, myString)
Je vois pas trop pourquoi ça ne fonctionnerai pas.
0