Problème de formule dans tableau virtuel en Vba

micky01

XLDnaute Occasionnel
Salut tout le monde,
J'ai un problème pour renvoyer une formule à partir d'un tableau virtuel.

Voilà un code similaire...

Code:
TabResult(1, N) = 'ici j'aimerais renvoyer une formule du style "=INDEX(plage;EQUIV($A" & N + 4 & ";feuil1!A:A;0)-1;EQUIV($B$8;feuil1!$2:$2;0))"
TabResult(2, N) = ...
TabResult(3, N) = ...

Est ce que ce genre de chose est possible?

Merci pour votre aide éventuelle.:p
 

Pierrot93

XLDnaute Barbatruc
Re : Problème de formule dans tableau virtuel en Vba

Bonsoir,

pas sur d'avoir bien compris la question, mais à priori possible, un code comme celui-ci te stockera la chaîne de caractères dans le tableau :

Code:
Dim t(0 To 5) As String
t(0) = "=INDEX(plage;EQUIV($A" & N + 4 & ";feuil1!A:A;0)-1;EQUIV($B$8;feuil1!$2:$2;0))"

bonne soirée
@+
 

micky01

XLDnaute Occasionnel
Re : Problème de formule dans tableau virtuel en Vba

Merci de ta réponse,

En fait, si je met
Code:
TabResult(1, N) = "INDEX(plage;EQUIV($A" & N + 4 & ";feuil1!A:A;0)-1;EQUIV($B$8;feuil1!$2:$2;0))"

Ca me renvoie bien le texte INDEX(plage;EQUIV($A" & N + 4 & ";feuil1!A:A;0)-1;EQUIV($B$8;feuil1!$2:$2;0)) dans mes lignes.

Seulement, j'arrive pas a intégrer le signe "=" dans mon texte pour que ca me colle une formule :s
 

Pierrot93

XLDnaute Barbatruc
Re : Problème de formule dans tableau virtuel en Vba

Re,

je ne comprends pas trop... le code ci-dessous fonctionne chez moi et une formule est bien renvoyée dans la cellule :

Code:
Dim t(0 To 5) As String
t(0) = "=INDEX(plage;EQUIV($A" & N + 4 & ";feuil1!A:A;0)-1;EQUIV($B$8;feuil1!$2:$2;0))"
Range("A1").FormulaLocal = t(0)

A noter le signe = devant INDEX... il n'y est pas dans ton post de 18h11...
 

micky01

XLDnaute Occasionnel
Re : Problème de formule dans tableau virtuel en Vba

Bonjour,

Désolé de ne pas avoir pu répondre avant...

Il se trouve que je n'ai pas ce
Code:
Range(A1).formulalocal = T(0)
etant donné que je suis dans un tableau virtuel comme indiqué dan sle titre...

J'ai
Code:
Dim TabResult() As Variant
TabResult(1, N) = "=INDEX(plage;EQUIV($A" & N + 4 & ";feuil1!A:A;0)-1;EQUIV($B$8;feuil1!$2:$2;0))"
TabResult(2, N) = blablabla (autre code qui ne renvoie pas une formule)
TabResult(3, N) = blablabla (autre code qui ne renvoie pas une formule)

Je ne pense pas etre clair dans mon explication...

Est-il possible de renvoyé une formule à partir d'un TABLEAU VIRTUEL? et si oui, comment?

Merci :confused:
 

micky01

XLDnaute Occasionnel
Re : Problème de formule dans tableau virtuel en Vba

Le problème est que tu me change tout mon code, cependant, mon code est beaucoup plus long que ce que j'ai écrit et du coup, je ne voix pas vraiment comment passer de
Code:
Dim TabResult() As Variant
TabResult(1, N) = "=INDEX(plage;EQUIV($A" & N + 4 & ";feuil1!A:A;0)-1;EQUIV($B$8;feuil1!$2:$2;0))"
TabResult(2, N) = blablabla (autre code qui ne renvoie pas une formule)
TabResult(3, N) = blablabla (autre code qui ne renvoie pas une formule)
a ton code
Code:
Dim t(0 To 5) As String
t(0) = "=INDEX(plage;EQUIV($A" & N + 4 & ";feuil1!A:A;0)-1;EQUIV($B$8;feuil1!$2:$2;0))"
Range("A1").FormulaLocal = t(0)

Je vais me replonger dedans etessayé de comprendre, j'ai du louper une étape lol.

Merci à toi Pierrot ;)
 

Pierrot93

XLDnaute Barbatruc
Re : Problème de formule dans tableau virtuel en Vba

Re,

oui mais le code que tu as donné ne peut fonctionner en l'état... tu as extrait que quelques lignes, et tester ces lignes en dehors du contexte, ne donnera rien... si tu rencontres d'autres problèmes, le mieux est de placer sur le forum un tout petit fichier représentant bien le problème posé avec le code complet utilisé...

@+
 

Discussions similaires

Réponses
8
Affichages
501

Statistiques des forums

Discussions
312 469
Messages
2 088 697
Membres
103 924
dernier inscrit
Patrick c