Pb de passage d'un tableau dans une fonction - Visual Basic

Comment passer en parametre un tableau à une fonction (tri par exemple)? Merci

en Variant, ça ne te va pas?
sinon en …(mavariable() as String) … ça doit marche aussi.

Il y a quelque chose d’autre, car j’ai une erreur en écrivant
call TRI (Tableau() as variant) avec Function TRI (T() as variant) ?!?

Rien ne vaut un bon vieil exemple hello world :wink: :


Public Function implode(table As Variant, separator As String) As String
  ' implode a table into as String using the separator
  Dim sep As String
  Dim element
  If Not IsEmpty(table) Then
    For Each element In table
      implode = implode + sep + CStr(element)
      sep = separator
    Next
  End If
End Function


Sub macroTest()
  Dim maListe(0 To 1) As String
  maListe(0) = "hello"
  maListe(1) = "world"
  MsgBox implode(maListe, " ")
End Sub


Quand tu écris
“Function TRI (T() as variant)”
le type de la variable c’est un tableau de variant, pas un variant, il faut écrire
“Function TRI (T as variant)”

et passer en paramètre "maVariable" tout court.

Mon exemple (qui concatène un tableau pour afficher “hello world” devrais t’aider.

Un grand merci pour ces explications bien utiles au débutant que je suis. En fait j’ai trouvé l’origine de l’erreur, c’était une question de format incompatible entre eux! Mais merci encore de l’exemple.