VBA Excel: Transcription Formule

Fermé
Magiclb Messages postés 2 Date d'inscription vendredi 30 mars 2018 Statut Membre Dernière intervention 30 mars 2018 - 30 mars 2018 à 12:25
Magiclb Messages postés 2 Date d'inscription vendredi 30 mars 2018 Statut Membre Dernière intervention 30 mars 2018 - 30 mars 2018 à 16:28
Bonjour à tous,

Je dois réaliser une petite macro devant réaliser la somme de plusieurs termes en fonction, dans un premier temps, de l’entrée que je met dans une colonne U (type txt) exemple « AR » ou « BV »
Selon l’un ou l’autre cas, je dois appliquer en colonne X une formule différente.
L’une de ces formules est, par exemple: (Sous Excel simple)

=SOMME(SOMME.SI.ENS(‘7. PG8’!$Q:$Q;´7. PG8’$T:T;[@Identité];’7. PG8!$K:K;{« HN »; « LI »; « PV »}))/SOMME(SOMME.SI.ENS(´7. PG8’!$O:$O;´7. PG8’$T:T;[@Identité];’7. PG8!$K:K;{« HN »; « LI »; « PV »}))

En gros 7. PG8 est une de mes feuilles à laquelle je fais appel pour mon calcul, précisément ses colonnes Q et O pour les sommes et [@Identité] est la colonne de mon tableau dans ma feuille DT2. Je fais donc la somme des coefficients de Q/la somme des coefficients de O si dans les 2 cas l’identité contenue dans la colonne de mon tableau dans DT2 correspond à celle contenue dans la colonne T de 7. PG8 et je ne somme donc que les termes contenant les informations HN, LI et PV en colonne K de ma feuille 7. PG8.

Je sollicite donc votre aide car je sais qu’il faut faire un case je sais comment le faire simplement en vba selon mes cas mais au niveau de l’imputation de la formule sous format vba je galère un peu :/, notamment au niveau des appels de feuilles ou de la prise en compte de hn li et pv !


Merci d’avance pour votre réponse !
A voir également:

1 réponse

eriiic Messages postés 24595 Date d'inscription mardi 11 septembre 2007 Statut Contributeur Dernière intervention 2 septembre 2024 7 235
Modifié le 30 mars 2018 à 12:58
Bonjour,

j'ai beau lire et relire je ne vois pas quel est ton problème ou ta question.
A part que tu supposes qu'il faut un Case...

Une suggestion : en enregistrement de macro revalide ta formule sur une feuille pour avoir sa formulation en anglais et en R1C1.
Et en vba récupère le résultat en faisant :
resultat = evaluate("la_formule")

Obtiens-tu ce qui t'intéresse ?
eric

0
Magiclb Messages postés 2 Date d'inscription vendredi 30 mars 2018 Statut Membre Dernière intervention 30 mars 2018
30 mars 2018 à 16:28
Oui eriiic !

Je voulais juste transcrire la formule en R1C1 pour la mon code vba !

J’ai pu finalisé mon programme grâce à ton astuce, merci beaucoup !
0