Bonjour,

Je suis étudiant et je cherche à développer une macros basé sur un SI pour mon épreuve d'oral en fin d'année.

Mon classeur excel (Classeur test.xls) est basé sur une liste déroulante (des dates) qui me reporte des montants sur tous mes tableaux de coûts situés dans les feuilles suivantes (il s'agit d'une application de contrôle de gestion).

Je souhaite donc faire une macro qui me sélectionne mon résultat analytique, ouvre un nouveau classeur (analyse.xls) existant et colle ce résultat analytique dans ce nouveau classeur ouvert. Je souhaite qu'il le colle à différents endroits selon la période. C'est pourquoi j'ai pensé à une fonction SI.

Mon code VBA est donc celui-ci

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
31
32
33
34
35
Sub MacroTest() 
 
Workbooks.Open Filename:= _ 
"G:\Tableaux de couts\analyse.xls" 
 
Windows("Classeur test.xls").Activate 
If DateChoixTxt = mai_2008 Then 
 
Windows("Classeur test.xls").Activate 
Sheets("Résultat analytique").Select 
Range("D7:D9").Select 
Selection.Copy 
 
Windows("analyse.xls").Activate 
Sheets("Ecart").Select 
Range("B4:B6").Select 
Selection.PasteSpecial Paste:=xlValues, Operation:=xlNone, SkipBlanks:= _ 
False, Transpose:=False 
 
Else 
 
Windows("Classeur test.xls").Activate 
Sheets("Résultat analytique").Select 
Range("D7:D9").Select 
Selection.Copy 
 
Windows("analyse.xls").Activate 
Sheets("Ecart").Select 
Range("E4:E6").Select 
Selection.PasteSpecial Paste:=xlValues, Operation:=xlNone, SkipBlanks:= _ 
False, Transpose:=False 
 
End If 
 
End Sub
La cellule contenant la date est une cellule avec une fonction qui me renvoie la date au format mai 2008.

Le code a l'air bon.
Et pourtant, j'ai beau tester des tas de trucs, quand je lance la macro, elle colle toujours dans les cellules B4:B6, sans tenir compte de la condition.

J'ai peut-être fait une erreur dans la syntaxe. A vrai dire, je ne suis qu'un débutant en VBA.
Je sollicite donc votre aide, après des heures à avoir planché sur le sujet sans résultat.

Merci d'avance pour votre aide,

Cordialement,