calcul macro VBA avec Matching de valeur

cg1980

XLDnaute Occasionnel
Bonjour,
J'aimerais faire un calcul au moyen d'une macro.

2 onglets Frontemovimenteazione1 (que j'appelle A)
FroneDati1 (B)

voici les détails:
j'aimerais cacluler "chiffre de colonne AS de l'onglet B" + "colonne I de l'onglet A" -"AS*AT/100 de l'onglet B"-"AT32 de l'onglte B" pour chaque code correspondant qui est en colonne A des 2 onglets.

Example j'aimerais faire ce calcul pour la ligne ayant le code AT0000386198 Corp et ainsi de suite.

Il y a une contrainte. L'opération se fait uniquement si dans la colonne J de l'onglet A il est écrit "INS"
et reporter ces résultats dans en colone K de l'onglet A

Merci beaucoup
 

Pièces jointes

  • TEST.xls
    18 KB · Affichages: 51
  • TEST.xls
    18 KB · Affichages: 42
  • TEST.xls
    18 KB · Affichages: 48

Dranreb

XLDnaute Barbatruc
Re : calcul macro VBA avec Matching de valeur

Bonjour.
J'ai donc mis "INS" en J7 puis
Code:
=SI($J7="INS";EQUIV(A7;FonteDati1!A:A;0);#N/A)
en L7 (j'espère que l'utilisation de cette colonne non prévue ne gène pas) puis:
Code:
=SI(ESTNA($L7);"";INDEX(FonteDati1!$AS:$AS;$L7)*(1-INDEX(FonteDati1!$AT:$AT;$L7)/100)+$I7-FonteDati1!$AT$32)
en K7. résultat étrange. Normal ?
À +
 

cg1980

XLDnaute Occasionnel
Re : calcul macro VBA avec Matching de valeur

hmm,théoriquement en K il devrai ramener 133500 (correpondant en "fontidati cellule AS4" du 2ème onglet)

L'opération devrait se faire sur les lignes 7 du 1er onglet et 3 du 3ème onglet (où on retrouvne le code AT0000385745 Corp en colonne A)
 

Dranreb

XLDnaute Barbatruc
Re : calcul macro VBA avec Matching de valeur

Bonjour

INDEX(FonteDati1!$AS:$AS;$L7) = 1335000 (= AS3 et non AS4 pour "AT0000386198 Corp")
INDEX(FonteDati1!$AT:$AT;$L7) = 0
$I7 = 900000
FonteDati1!$AT$32 = 10000000
1335000*(1-0/100) = 1335000
1335000+900000-10000000 = -7765000

Voyez si le calcul que vous m'avez indiqué était celui qu'il fallait:
j'aimerais cacluler "chiffre de colonne AS de l'onglet B" + "colonne I de l'onglet A" -"AS*AT/100 de l'onglet B"-"AT32 de l'onglte B"
Donc disons: B!AS + A!I - B!AS * B!AT / 100 - B!AT32
que j'ai simplifié en: A!I + B!AS * (1 - B!AT / 100) - B!AT32

Le nouveau code "AT0000385745 Corp " dont vous me parlez à présent ne figurait pas dans votre première feuille et je ne sais donc la valeur de colonne I que vous appliquez.
À+
 
Dernière édition:

Discussions similaires

Réponses
10
Affichages
198
Réponses
5
Affichages
373

Statistiques des forums

Discussions
312 088
Messages
2 085 200
Membres
102 816
dernier inscrit
bolivier