Fonction de tableau dans Excel VBA

J'ai une fonction en VBA qui génère un tableau de chaînes de caractères. Il fonctionne très bien lorsqu'il est appelé à partir d'une autre fonction VBA, mais pas lorsqu'il est appelé à partir de la feuille de calcul.

Voici comment il devrait être utilisé:

  • sélectionnez A1:A3
  • écrire dans la barre de formule =Test(), puis appuyez Ctrl-Shift-Enter pour en faire une fonction de tableau
  • A1 doit contenir A, A2 doit contenir B, et A3 doit contenir C

Quand j'ai essayer ceci, il met A dans les trois cellules de la matrice. Comment puis-je obtenir les données renvoyées par Test dans les différentes cellules du tableau?


Pour ceux qui voudrais le voir, voici le code de la fonction. Gardez à l'esprit, la fonction fonctionne très bien lorsqu'il est appelé à d'autres fonctions.

Function Test() As String()
    Dim a(1 To 3) As String
    a(1) = "A"
    a(2) = "B"
    a(3) = "C"
    Test = a
End Function

OriginalL'auteur Joe | 2012-04-24