Page 1 sur 1

fonction split

MessagePublié: 08 Sep 2010 à 10:24
par lebanner
Bonjour a tous,

Je dois certainement manquer de café mais je n'arrive pas a compter le nombre d'éléments dans une variable suite à un split.

Voici le code :
Code : Tout sélectionner
      If recupcont1 <> "" Then
         Dim resultsplit1 As Variant
         Dim delimsplit1 As String
         Dim valeursplit1 As String
         
         delimsplit1 = ","
         valeursplit1 = recupcont1
         resultsplit1 = Split(valeursplit1, delimsplit1)   
         
      End If


La variable resultsplit1 contient 15 valeurs, est ce que quelqu'un peut -il m'aider ?

Merci d'avance

Cordialement

MessagePublié: 08 Sep 2010 à 10:38
par LSong
ubound (resultsplit1) est ton ami je pense

sinon version bourrin

forall elem in resultsplit1
count = count + 1
End Forall

et va chercher un café :D

MessagePublié: 08 Sep 2010 à 11:03
par lebanner
LSong a écrit:ubound (resultsplit1) est ton ami je pense

sinon version bourrin

forall elem in resultsplit1
count = count + 1
End Forall

et va chercher un café :D


Bonjour LSong,

c'est bon, j'ai été chercher un café !! lol

Effectivement, Ubound est mon ami (j'aurai du y penser !!)

Merci beaucoup en tout cas.

Ciao

MessagePublié: 08 Sep 2010 à 11:07
par Michael DELIQUE
salut

ou tu peut tester if isarray et if isempty pour etre certain que tu récupere bien qqc que ton code sait traiter

MessagePublié: 08 Sep 2010 à 12:55
par LSong
j'ai jamais vu le retour d'un split renvoyer empty ou null ou pas un tableau ... mais vaut mieux verifier je suis d'accord

MessagePublié: 08 Sep 2010 à 14:07
par nemrod93
Bah la doc elle dit
Split returns an Array of Strings. Each element of this array contains a substring found in expression.
Personnellement, je fais un evaluate({@explode(bla-bla)}) car j'ai souvent rencontré des pbs avec split.
Vous en pensez quoi?

MessagePublié: 08 Sep 2010 à 14:28
par Michael DELIQUE
jamais eu de souci avec split, mais je teste systématiquement le variant apres => http://forum.dominoarea.org/tester-une- ... 17732.html

mais passer par un evaluate beurk ! je préfére encore un split codé en ls

MessagePublié: 08 Sep 2010 à 14:39
par LSong
jamais eut de probleme avec le split
mais je n'aime pas les variants ...
j'ai tendence a l'encapsuler pour renvoyer* un vrai tableau de string

* enfin renvoyer c'est un grand mot vu que l'on ne peu pas retourner un tableau, je passe donc un tableau en parametre de ma fonction

MessagePublié: 08 Sep 2010 à 14:43
par Michael DELIQUE
salut

si tu peux passer un tableau si la fonction est définie comme variant.

et ensuite ça s'utilise comme un tableau

MessagePublié: 08 Sep 2010 à 14:45
par nemrod93
Je sais evaluate c'est un peu beurk et bof, mais mon parc est tellement hétérogène que c'est encore le seul moyen que j'ai trouvé pour que personne ne se plaigne :( :( :(
De plus, j'interface avec un db2/400 et là c'est de l'EBCDIC en face donc... Je suis bien content avec le @explode :D