Bonjour à tous les abonnées des Forums Developpez.com,
J'ai préparer une procédure qui me génère un tableau à partir d'une feuille de calcul feuille x
les intitulés des lignes c'est des "Cost Code" et ceux des colonnes c'est les 12 prochains mois à venir (période sous le format mm/aaaa)
à l'intérieure du tableau je veut remplir les cellules avec la somme des montants des commandes qui possèdent le même cost code de la ligne et durant le mois de la colonne
le montant des commandes ce trouve dans la feuille x
exemple de cost Code 15xxx: >=15000 et <16000
1105x: >=11050 et <11060
la formule sous excel est la suivante:
La colonne X:X c'est les montant des commandes
Code : Sélectionner tout - Visualiser dans une fenêtre à part SOMMEPROD((feuillex!$Y$2:$Y$2197=B$4)*(feuillex!$J$2:$J$2197>=11100)*(feuillex!$J$2:$J$2197<11120)*(feuillex!$X$2:$X$2197))
La colonne j:j c'est les Cost Code
La colonne Y:Y c'est les période (exemple: 11/2008)
la ligne 2197 doit être dynamique c-à-d la dernière ligne de la colonne
il vaut mieux utiliser la formule à l'intérieure de la boucle existante
merci à tous ce qui prennent la peine de lire ce message
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30 Sub prévision() ActiveWorkbook.Worksheets.Add.Name = "Stock_Target_12_months" Worksheets("Stock_Target_12_months").Select Range("A3").Value = "Période" Range("A4").Value = "Cost Code" Range("A5").Value = "111xx" Range("A6").Value = "112xx" Range("A7").Value = "114xx" Range("A8").Value = "1151x" Range("A9").Value = "1152x" Range("A10").Value = "131xx" Range("A11").Value = "132xx" Range("A12").Value = "16xxx" Range("A13").Value = "105xx" Range("A14").Value = "134xx" Range("A15").Value = "133xx" Range("A16").Value = "1150x" Range("A17").Value = "12xxx" Range("A18").Value = "14xxx" Range("A19").Value = "15xxx" Range("A20").Value = "8xxxx" Range("A31").Value = "Total" Dim i As Integer For i = 0 To 12 ActiveSheet.Cells(2, i + 2).FormulaLocal = "=TEXTE(DATE(ANNEE(AUJOURDHUI()); MOIS(AUJOURDHUI())+" & i & "; 1);" & """mmm - aaaa""" & ")" ActiveSheet.Cells(3, i + 2).FormulaLocal = "=TEXTE(DATE(ANNEE(AUJOURDHUI()); MOIS(AUJOURDHUI())+" & i & "; 1);" & """mm/aa""" & ")" Next i End Sub
Mouna
Partager