Bonjour,

Voici mon problème. J'ai deux macros qui fonctionne lorsqu'elles sont séparées. Mais quand je les fusionne, elles créer un conflit et la fonction if ne fonctionne plus.

1er code choisi une macro d'impression en fonction des cellule D8 des feuilles Route 10-A et Route 10-B. Elle fonctionne parfaitement.

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
Option Compare Text
Sub Selection_Semaine()
 
    Dim Route10A As String, Route10B As String
 
    Route10A = Sheets("Route 10-A").Range("D8")
 
    Route10B = Sheets("Route 10-B").Range("D8")
 
    If Route10A = Route10B Then
 
    ImprimerRoute10Semaine
 
    Else
 
    Imprimer_Semaine
 
    End If
 
End Sub
2e Code, Change les dates des feuilles de semaine afin qu’elles indiquent les informations du lundi suivant, imprime les feuilles de fin de semaine et du lundi puis remet la configuration "normal" du classeur. Encore cette macro fonctionne parfaitement.
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
Sub Imprimer_Weekend()
'
' Imprimer_Weekend Macro
'
 Sheets(Array("Route 1", "Route 11", "Route 10-A", "Route 10-B", "Route 10 semaine")).Select
    Sheets("Route 1").Activate
    Range("B8").Select
    ActiveCell.FormulaR1C1 = "=Calcule!R[-6]C[1]"
    Range("B9").Select
    Sheets(Array("Route 1", "Route 11", "Route 10-A", "Route 10-B", "Route 10 Samedi", _
        "Route 10 Dimanche")).Select
    Sheets("Route 1").Activate
    ActiveWindow.SelectedSheets.PrintOut Copies:=1, Collate:=True, _
        IgnorePrintAreas:=False
    Sheets(Array("Route 1", "Route 11", "Route 10-A", "Route 10-B", "Route 10 Semaine")).Select
    Sheets("Route 1").Activate
    Range("B8").Select
    ActiveCell.FormulaR1C1 = "=Calcule!R[-6]C[3]"
    Range("B9").Select
    Sheets("Horaire").Select
End Sub
Le code fusionné est
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
36
37
38
39
40
41
42
43
Option Compare Text
Sub Imprimer_Weekend()
'
' Imprimer_Weekend Macro
'
    Dim Route10A As String, Route10B As String
 
    Route10A = Sheets("Route 10-A").Range("D8")
 
    Route10B = Sheets("Route 10-B").Range("D8")
 
    Sheets(Array("Route 1", "Route 11", "Route 10-A", "Route 10-B", "Route 10 semaine")).Select
    Sheets("Route 1").Activate
    Range("B8").Select
    ActiveCell.FormulaR1C1 = "=Calcule!R[-6]C[1]"
    Range("B9").Select
    Application.Wait Time + TimeSerial(0, 0, 5)
 
    If Route10A = Route10B Then
 
  '     Sheets(Array("Route 1", "Route 11", "Route 10 semaine", "Route 10 Samedi", _
  '      "Route 10 Dimanche")).Select
  '  Sheets("Route 1").Activate
  '  ActiveWindow.SelectedSheets.PrintOut Copies:=1, Collate:=True, _
  '      IgnorePrintAreas:=False
    MsgBox ("pareil")
    Else
 
 '   Sheets(Array("Route 1", "Route 11", "Route 10-A", "Route 10-B", "Route 10 Samedi", _
 '       "Route 10 Dimanche")).Select
 '   Sheets("Route 1").Activate
 '   ActiveWindow.SelectedSheets.PrintOut Copies:=1, Collate:=True, _
 '       IgnorePrintAreas:=False
    MsgBox ("pas pareil")
    End If
 
    Sheets(Array("Route 1", "Route 11", "Route 10-A", "Route 10-B", "Route 10 Semaine")).Select
    Sheets("Route 1").Activate
    Range("B8").Select
    ActiveCell.FormulaR1C1 = "=Calcule!R[-6]C[3]"
    Range("B9").Select
    Sheets("Horaire").Select
End Sub
J'ai mis les commandes d'impression en commentaire et mit des message box afin de tester sans gaspiller une tonne de papier. Voici le problème, peu importe le résultat des cellule D8 des feuille Route 10-A et Route 10-B (pareil ou pas pareil), le résultat change en fonction de la date et non des cellules souhaitées. Voyez-vous un problème dans mon code? si oui, le quel? si vous le désiré je peux vous mettre mon fichier en pièce jointe.

Merci d'avance pour votre aide.