Je travaille sur un Add-in pour Excel qui doit remplir une ou plusieurs cellules de la feuille de calcul avec les données du serveur. Je ne suivant:Remplissage de plusieurs cellules Excel avec des données de la fonction définie par l'utilisateur du complément (UDF)
- Création d'un Add-in (xlam) et créé la fonction définie par l'utilisateur: GetMyData()
- J'appelle cette fonction à partir d'une simple feuille de calcul Excel. Dans la cellule A1, j'ai entré la formule = GetMyData()
- Mon serveur renvoie le tableau JSON. Je suis capable d'analyser le JSON et essaie maintenant de remplir les lignes A1 et ci-dessous avec les valeurs que j'ai reçues du serveur. (dans ce cas, j'ai 20 valeurs, donc je veux remplir les cellules A1: A20).
Le problème est que selon Microsoft KB, une fonction définie par l'utilisateur est en mesure de modifier la valeur de la cellule active uniquement. https://support.microsoft.com/en-us/help/170787/description-of-limitations-of-custom-functions-in-excel J'ai essayé aussi d'exécuter le code ci-dessous qui change une seule cellule à une valeur hardcoded:
ActiveWorkbook.Sheets("DataSheet").Cells(1, 1).Value = '12312'
Still - exception obtenir.
Quelqu'un peut-il aider à résoudre ce problème?
le changement à un sous et d'appeler à partir d'un bouton. –
Avoir la fonction retourner un tableau vertical, mettre en évidence toutes les cellules et le tableau entrer la formule dans toutes les cellules à la fois. –
Vous pouvez utiliser une formule matricielle comme indiqué dans les réponses ci-dessous, mais vous devez connaître le nombre maximal d'éléments renvoyés, afin de pouvoir remplir la formule dans le nombre de cellules approprié. Si cela ne fonctionne pas dans votre cas, vous devrez trouver une approche différente. –