FormulaArray et tableau variable sous vba

  • Initiateur de la discussion Initiateur de la discussion mikil
  • Date de début Date de début

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

M

mikil

Guest
Bonjour a tout le monde

Je butte sur un problème depuis pas mal de jours.
J'ai une Spreadsheet excel dans la quelle je loade une dll qui contient des fonctions particulières.
Une de ces fameuses fonctions(en l'occurence FonctionSpeciale ici) renvoie une matrice.

Dim RequestData As Variant
Dim Model As Variant
Dim Data As Variant
Dim Algorithm As Variant
dim RefValue as Variant
dim RefValue1 as Variant

RequestData = Range("RequestData").Value
Model = Range("Model").Value
Algorithm = Range("Algorithm").Value
Data = Range("Data").Value
RefValue1 = Range("RefValue1").Value

Feuil1.Range(Range("Matrix").Offset(1, 1), Range("Matrix").Offset(k, 3)).FormulaArray = "=FonctionSpeciale( RefValue , RequestData, Model, Data, Algorithm)"


le probleme vient du fait de RefValue est une matrice généré dynamiquement à l'intérieur du code ce n'est pas un objet range.

lorsque j'éxecute la macro j'obtiens des #NOM? partout dans ma matrice, et lorsque je fais la meme opération sur la spreadsheet en choisissant cette fois une range de meme taille que RefValue(RefValue1) ca marche.


Feuil1.Range(Range("Matrix").Offset(1, 1), Range("Matrix").Offset(k, 3)).FormulaArray = "=FonctionSpeciale( RefValue1 , RequestData, Model, Data, Algorithm)"

en fait cela ne m'arrange pas d'avoir sur la spreadsheet RefValue1 pour des raisons pratiques.

Merci D'avance
 
Re : FormulaArray et tableau variable sous vba

Bonjour mikil

Personnellement , je ne vois pas d'autre solution que la modification de la fonction FonctionSpeciale en declarant RefValue en Paramarray (bien le mettre en dernier)
PS: Il y aurait aussi l'utilisation d'une feuille (eventuellement cachée ) servant de support au range RefValue
 
Re : FormulaArray et tableau variable sous vba

Bonjour pierrejean

Merci pour la réponse, en fait je n'ai pas la main sur cette fonction elle provient d'une xll que l'on as mis a ma disposition.

j'avais déjà pensé a cette solution(qui pour moi est mon dernier recours) mon idée c'était meme d'affecter le contenu de RefValue dans une range puis a partir de cette range que je nommerais par la suite RefValueBis faire une copie par valeur puis appliquer dessus ma fonction FonctionSpeciale puis effacer de ma feuille RefValueBis mais je trouve ca un peu limite, s'il n'ya vraiment pas d'autres solutions je le ferais, mais s'il y a plus simple franchement je suis preneur.

Merci encore pour ta réponse pierrejean
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD
Assurez vous de marquer un message comme solution pour une meilleure transparence.

Discussions similaires

Réponses
3
Affichages
922
  • Question Question
Microsoft 365 Question code VBA
Réponses
2
Affichages
613
Réponses
7
Affichages
812
Z
Réponses
1
Affichages
602
Retour