Merci Bubben, c'est exactement ça.
Oui je passe les modifs pour aligner Cash at holdco dans les 2 fichiers.
Dis-moi, du coup, si je change la position des cellules dans la WELCOME PAGE et FINANCIAL TABLE (j'ai mis en forme le fichier, rajouté des inter-colonnes, rajouté des inter-lignes, mis de la couleur....) du coup quelles sont les données que je dois changer dans ta macro? Uniquement celles en gras ci-dessous dans ta macro ? Je ne crois pas.
Merci d'avance pour ton aide, c'est vraiment top.
Public Sub MAJ()
Dim oShW As Worksheet
Dim oShF As Worksheet
Dim iLigW As Integer
Dim iColF As Integer
Dim iDerColF As Integer
Dim iLigF As Integer
Dim iDerLigF As Integer
Set oShW = Worksheets("Welcome page")
Set oShF = Worksheets("Financial table")
Application.ScreenUpdating = False
'**********************
'Gestion des colonnes
'**********************
iDerColF = oShF.Range("ZZ4").End(xlToLeft).Column
For iLigW = 4 To 29
For iColF = 2 To iDerColF
If Trim(oShF.Cells(4, iColF).Value) = Trim(oShW.Range("C" & iLigW).Value) Then
If oShW.Range("D" & iLigW).Value Then
'affiche colonne
If oShF.Columns(iColF).EntireColumn.Hidden Then
oShF.Columns(iColF).EntireColumn.Hidden = False
End If
Else
'masque colonne
If Not oShF.Columns(iColF).EntireColumn.Hidden Then
oShF.Columns(iColF).EntireColumn.Hidden = True
End If
End If
End If
Next iColF
Next iLigW
'**********************
'Gestion des lignes
'**********************
iDerLigF = oShF.Range("A" & Rows.Count).End(xlUp).Row
For iLigW = 4 To 36
For iLigF = 5 To iDerLigF
If Trim(oShF.Range("A" & iLigF).Value) = Trim(oShW.Range("P" & iLigW).Value) Then
If oShW.Range("Q" & iLigW).Value Then
'affiche ligne
If oShF.Rows(iLigF).Hidden Then
oShF.Rows(iLigF).Hidden = False
End If
Else
'masque ligne
If Not oShF.Rows(iLigF).Hidden Then
oShF.Rows(iLigF).Hidden = True
End If
End If
End If
Next iLigF
Next iLigW
Application.ScreenUpdating = True
Set oShW = Nothing
Set oShF = Nothing
End Sub