Bonjour,
Je souhaite faire saisir une variable (un chiffre) par l'utilisateur de la macro. cette variable est ensuite utilisée dans le code.
Je l'ai déjà fait sur une macro mais dans ce cas ça ne fonctionne pas.
voici mon code :

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
Sub pointes() 'ok
Dim i As Long
Dim a, b, c, d As Integer
 
 
i = 2
j = 2
 
 While Not IsEmpty(Cells(i, 1))
 
        If Month(Cells(i, 1)) = 1 And Weekday(Cells(i, 1)) <> 1 And Hour(Cells(i, 1)) >= a And Hour(Cells(i, 1)) < b _
            Or Month(Cells(i, 1)) = 1 And Weekday(Cells(i, 1)) <> 1 And Hour(Cells(i, 1)) >= c And Hour(Cells(i, 1)) < d _
            Or Month(Cells(i, 1)) = 2 And Weekday(Cells(i, 1)) <> 1 And Hour(Cells(i, 1)) >= 8 And Hour(Cells(i, 1)) < 10 _
            Or Month(Cells(i, 1)) = 2 And Weekday(Cells(i, 1)) <> 1 And Hour(Cells(i, 1)) >= 18 And Hour(Cells(i, 1)) < 20 _
            Or Month(Cells(i, 1)) = 12 And Weekday(Cells(i, 1)) <> 1 And Hour(Cells(i, 1)) >= 8 And Hour(Cells(i, 1)) < 10 _
            Or Month(Cells(i, 1)) = 12 And Weekday(Cells(i, 1)) <> 1 And Hour(Cells(i, 1)) >= 18 And Hour(Cells(i, 1)) < 20 _
        Then
        Range(Cells(i, 1), Cells(i, 2)).Select
        Selection.Copy Range(Cells(j, 4), Cells(j, 5))
        i = i + 1
        j = j + 1
         Else
        i = i + 1
 
        End If
 
  Wend
    Range("D2:E2").Select
    Range(Selection, Selection.End(xlDown)).Select
    Selection.Copy
    Sheets("Feuil2").Select
    Range("A2:B2").Select
    ActiveSheet.Paste
 
 
End Sub
Je souhaite faire saisir par l'utilisateur les variables a,b,c et d et pour qu'elles soient prises en compte dans mon code.

Merci d'avance