Bonsoir Forum et bon w-e à tous !
J'ai réussi à réaliser cette macro avec l'enregistreur et elle fonctionne .
Je souhaiterais utiliser un userform avec 2 listes modifiables :
Liste 1 : contient les choix A ; B ; C ; D par ex.
Liste 2 : contient les noms des mois
L'utilisateur sélectionne son choix dans la liste modifiable 1 , puis sélectionne le mois dans la liste modifiable 2 :
Le choix du mois lance la macro et la macro exécute le code en tenant compte du mois choisi .
Si vous pouviez m'aider à réaliser ce rêve ...!!!
Pouvez vous me construire le userform afin que je comprenne le code nécessaires aux actions demandées ?
Pouvez vous apporter la modification au code de la macro ci-dessous pour que le mois sélectionné soit choisi pour filtrer :
ActiveSheet.Range("$A$5:$R$1048576").AutoFilter Field:=12, Criteria1:= _
xlFilterThisMonth, Operator:=xlFilterDynamic
Merci par avance.
Sub ACHATS()
'
' ACHATS Macro
'
'
Sheets("OPEX").Select
Rows("5:5").Select
Selection.AutoFilter
Selection.AutoFilter
ActiveSheet.Range("$A$5:$R$1048576").AutoFilter Field:=12, Criteria1:= _
xlFilterThisMonth, Operator:=xlFilterDynamic
Application.Run "'Budgets 2011 vf .xlsm'!MacroFiltreNatCptACHATS_050RG1"
Application.Run "'Budgets 2011 vf .xlsm'!MacroImputAUX_ORD"
Range("J4").Select
Selection.Copy
Range("D2").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
Application.CutCopyMode = False
Rows("5:5").Select
Selection.AutoFilter
Selection.AutoFilter
ActiveSheet.Range("$A$5:$R$1048576").AutoFilter Field:=12, Criteria1:= _
xlFilterThisMonth, Operator:=xlFilterDynamic
Application.Run "'Budgets TST HTA 2011 vf .xlsm'!MacroFiltreNatCpt050RG1"
ActiveSheet.Range("$A$5:$R$1048576").AutoFilter Field:=4, Criteria1:= _
"=K3272KL", Operator:=xlOr, Criteria2:="=K3272KM"
Range("J4").Select
Selection.Copy
Range("D3").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
Application.CutCopyMode = False
Range("D4").Select
ActiveCell.FormulaR1C1 = "=(R[-2]C-R[-1]C)/1000"
Range("D4").Select
Selection.Copy
Sheets("RésultatsOPEX").Select
Range("F35").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
Application.CutCopyMode = False
End Sub
J'ai réussi à réaliser cette macro avec l'enregistreur et elle fonctionne .
Je souhaiterais utiliser un userform avec 2 listes modifiables :
Liste 1 : contient les choix A ; B ; C ; D par ex.
Liste 2 : contient les noms des mois
L'utilisateur sélectionne son choix dans la liste modifiable 1 , puis sélectionne le mois dans la liste modifiable 2 :
Le choix du mois lance la macro et la macro exécute le code en tenant compte du mois choisi .
Si vous pouviez m'aider à réaliser ce rêve ...!!!
Pouvez vous me construire le userform afin que je comprenne le code nécessaires aux actions demandées ?
Pouvez vous apporter la modification au code de la macro ci-dessous pour que le mois sélectionné soit choisi pour filtrer :
ActiveSheet.Range("$A$5:$R$1048576").AutoFilter Field:=12, Criteria1:= _
xlFilterThisMonth, Operator:=xlFilterDynamic
Merci par avance.
Sub ACHATS()
'
' ACHATS Macro
'
'
Sheets("OPEX").Select
Rows("5:5").Select
Selection.AutoFilter
Selection.AutoFilter
ActiveSheet.Range("$A$5:$R$1048576").AutoFilter Field:=12, Criteria1:= _
xlFilterThisMonth, Operator:=xlFilterDynamic
Application.Run "'Budgets 2011 vf .xlsm'!MacroFiltreNatCptACHATS_050RG1"
Application.Run "'Budgets 2011 vf .xlsm'!MacroImputAUX_ORD"
Range("J4").Select
Selection.Copy
Range("D2").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
Application.CutCopyMode = False
Rows("5:5").Select
Selection.AutoFilter
Selection.AutoFilter
ActiveSheet.Range("$A$5:$R$1048576").AutoFilter Field:=12, Criteria1:= _
xlFilterThisMonth, Operator:=xlFilterDynamic
Application.Run "'Budgets TST HTA 2011 vf .xlsm'!MacroFiltreNatCpt050RG1"
ActiveSheet.Range("$A$5:$R$1048576").AutoFilter Field:=4, Criteria1:= _
"=K3272KL", Operator:=xlOr, Criteria2:="=K3272KM"
Range("J4").Select
Selection.Copy
Range("D3").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
Application.CutCopyMode = False
Range("D4").Select
ActiveCell.FormulaR1C1 = "=(R[-2]C-R[-1]C)/1000"
Range("D4").Select
Selection.Copy
Sheets("RésultatsOPEX").Select
Range("F35").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
Application.CutCopyMode = False
End Sub