Untitled
unknown
plain_text
2 years ago
4.0 kB
4
Indexable
'Code écrits dans la feuille 1 et 2 Private Sub Worksheet_Activate() 'quand la feuille est activé nbRows = ThisWorkbook.Worksheets(1).UsedRange.Rows.Count 'je récupère le nombre d'indicateurs (le nombre de ligne utilisée) For i = 2 To nbRows 'je créer une boucle qui va de la ligne 2 à la ligne du nombre d'indicateurs If Not IsEmpty(Me.Cells(i, 2)) Then 'je vérifie que la colonne "Abrev" ne soit pas vide If Not IsEmpty(Me.Cells(i, 3)) Then 'je vérifie que la colonne "Mesure" ne soit pas vide Me.Cells(i, 5).Value = "SBMJ_" & Me.Cells(i, 2).Value & "_secteur=CALCULATE([" & Me.Cells(i, 3).Value & "],REMOVEFILTERS('SQL Dim Organisation AD'[LibEdo]))" 'je créer pour chaque ligne l'indicateur au niveau du secteur 'Par exemple, pour le volume d'orange bank la formule est la suivante :CALCULATE([KPI7 - SERVICES FINANCIERS],REMOVEFILTERS('SQL Dim Organisation AD'[LibEdo])) Me.Cells(i, 6).Value = "SBMJ_" & Me.Cells(i, 2).Value & "_AD=CALCULATE([" & Me.Cells(i, 3).Value & "],REMOVEFILTERS('SQL Dim Organisation AD'[Lib Secteur]),REMOVEFILTERS('SQL Dim Organisation AD'[LibEdo]))" 'je créer pour chaque ligne l'indicateur au niveau de l'AD 'Par exemple, pour le volume d'orange bank la formule est la suivante :CALCULATE([KPI7 - SERVICES FINANCIERS],REMOVEFILTERS('SQL Dim Organisation AD'[Lib Secteur]),REMOVEFILTERS('SQL Dim Organisation AD'[LibEdo])) Me.Cells(i, 7).Value = "SBMJ_" & Me.Cells(i, 2).Value & "_FR9=CALCULATE([" & Me.Cells(i, 3).Value & "],REMOVEFILTERS('SQL Dim Organisation AD'[Lib Secteur]),REMOVEFILTERS('SQL Dim Organisation AD'[LibEdo]),REMOVEFILTERS('SQL Dim Organisation AD'[Lib Unité]))" 'je créer pour chaque ligne l'indicateur au niveau nationnale 'Par exemple, pour le volume d'orange bank la formule est la suivante : CALCULATE([KPI7 - SERVICES FINANCIERS],REMOVEFILTERS('SQL Dim Organisation AD'[Lib Secteur]),REMOVEFILTERS('SQL Dim Organisation AD'[LibEdo]),REMOVEFILTERS('SQL Dim Organisation AD'[Lib Unité)) Me.Cells(i, 8).Value = "SBMJ_" & Me.Cells(i, 2).Value & "_n-1=CALCULATE([" & Me.Cells(i, 3).Value & "],SAMEPERIODLASTYEAR('SQL Dim Temps'[Date]))" 'je créer pour chaque ligne l'indicateur au niveau de l'année precedente 'Par exemple, pour le volume d'orange bank la formule est la suivante :CALCULATE([KPI7 - SERVICES FINANCIERS],SAMEPERIODLASTYEAR('SQL Dim Temps'[Date])) Me.Cells(i, 9).Value = "SBMJ_" & Me.Cells(i, 2).Value & "_secteur_n-1=CALCULATE([" & Me.Cells(i, 2).Value & "_secteur ],SAMEPERIODLASTYEAR('SQL Dim Temps'[Date]))" 'je créer pour chaque ligne l'indicateur au niveau du secteur de l'année precedente 'Par exemple, pour le volume d'orange bank la formule est la suivante :CALCULATE([vol_OB_secteur ],SAMEPERIODLASTYEAR('SQL Dim Temps'[Date])) Me.Cells(i, 10).Value = "SBMJ_" & Me.Cells(i, 2).Value & "_AD_n-1=CALCULATE([" & Me.Cells(i, 2).Value & "_AD],SAMEPERIODLASTYEAR('SQL Dim Temps'[Date]))" 'je créer pour chaque ligne l'indicateur au niveau de l'AD de l'année precedente 'Par exemple, pour le volume d'orange bank la formule est la suivante :CALCULATE([vol_OB_AD],SAMEPERIODLASTYEAR('SQL Dim Temps'[Date])) Me.Cells(i, 11).Value = "SBMJ_" & Me.Cells(i, 2).Value & "_FR9_n-1=CALCULATE([" & Me.Cells(i, 2).Value & "_FR9],SAMEPERIODLASTYEAR('SQL Dim Temps'[Date]))" 'je créer pour chaque ligne l'indicateur au niveau nationnale de l'année precedente 'Par exemple, pour le volume d'orange bank la formule est la suivante :CALCULATE([vol_OB_FR9],SAMEPERIODLASTYEAR('SQL Dim Temps'[Date])) End If End If Next End Sub
Editor is loading...