Bonjour !

J'ai une macro qui marchait avant mais qui aujourd'hui ne marche plus, étant donné que j'ai changé la structure de mon fichier.
J'essaye de vous expliquer en quelques lignes ce que je cherche à faire, mais je crois que l'exemple que je vous joint sur le fichier test sera bien plus parlant.

Dans la feuille macros l'utilisateur vient clicker sur le bouton "Modifier date".
Cela lui lance un 1er inputbox lui demandant de saisir un nombre de 1 à 20
Puis un 2ème inputbox lui demandant de saisir une date.

Si il saisit 1 et 01/12/2011 je veux que la date saisie vienne s'inscrire dans la feuille "database" à un endroit précis.
Cette endroit dépend du numéro inscrit en A2 de la feuille macros.
Dans mon exemple si le numéro est 1 alors la macro est censée venir trouver dans la colonne 1 de la feuille database la ligne correspond à ce numéro 1. La colonne qui correspond est quand à elle IV si il avait saisit 1 lors d1 er inputbox, IX si il avait saisit 2, et ainsi de suite (de 2 en 2).

J'espère avoir été clair..

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
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
Sub Bouton4_Clic()
Dim liste As Variant, l As Long
'MACRO Modif Date
 
liste = Array(1, 3, 4, 6, 7, 8, 10, 12, 13, 15, 21, 22, 23, 25, 33, 35, 36, 37, 39, 40, 41, 42, 43, 50, 51, 52, 54, 55, 56)
 
rev = InputBox("Enter 1 for REV1, 2 for REV2, etc.", "REV Date Modification")
 
If rev = "" Or Not IsNumeric(rev) Then
MsgBox "Canceled, Please Enter a number"
Exit Sub
 
End If
 
If rev < 1 Or rev > 20 Then
 
MsgBox "wrong rev number"
Exit Sub
End If
 
rev = CInt(rev)
 
mdir = InputBox("SELECT THE DATE: (dd/mm/yy)", "REV x")
If Not IsDate(mdir) Then
MsgBox "Canceled"
Exit Sub
End If
For l = LBound(liste) To UBound(liste)
Select Case rev
 
Case 1
If Range("A2") = liste(l) Then Sheets("database").Range("IV" & 1 + 3).Value = CDate(mdir)
 
Case 2
If Range("A2") = liste(l) Then Sheets("database").Range("IX" & l + 2).Value = CDate(mdir)
 
Case 3
If Range("A2") = liste(l) Then Sheets("database").Range("IZ" & l + 2).Value = CDate(mdir)
 
Case 4
If Range("A2") = liste(l) Then Sheets("database").Range("JB" & l + 2).Value = CDate(mdir)
 
Case 5
If Range("A2") = liste(l) Then Sheets("database").Range("JD" & l + 2).Value = CDate(mdir)
 
Case 6
If Range("A2") = liste(l) Then Sheets("database").Range("JF" & l + 2).Value = CDate(mdir)
 
Case 7
If Range("A2") = liste(l) Then Sheets("database").Range("JH" & l + 2).Value = CDate(mdir)
 
Case 8
If Range("A2") = liste(l) Then Sheets("database").Range("JJ" & l + 2).Value = CDate(mdir)
 
Case 9
If Range("A2") = liste(l) Then Sheets("database").Range("JL" & l + 2).Value = CDate(mdir)
 
Case 10
If Range("A2") = liste(l) Then Sheets("database").Range("JN" & l + 2).Value = CDate(mdir)
 
Case 11
If Range("A2") = liste(l) Then Sheets("database").Range("JP" & l + 2).Value = CDate(mdir)
 
Case 12
If Range("A2") = liste(l) Then Sheets("database").Range("JR" & l + 2).Value = CDate(mdir)
 
Case 13
If Range("A2") = liste(l) Then Sheets("database").Range("JT" & l + 2).Value = CDate(mdir)
 
Case 14
If Range("A2") = liste(l) Then Sheets("database").Range("JV" & l + 2).Value = CDate(mdir)
 
Case 15
If Range("A2") = liste(l) Then Sheets("database").Range("JX" & l + 2).Value = CDate(mdir)
 
Case 16
If Range("A2") = liste(l) Then Sheets("database").Range("JZ" & l + 2).Value = CDate(mdir)
 
Case 17
If Range("A2") = liste(l) Then Sheets("database").Range("KB" & l + 2).Value = CDate(mdir)
 
Case 18
 
If Range("A2") = liste(l) Then Sheets("database").Range("KD" & l + 2).Value = CDate(mdir)
 
Case 19
If Range("A2") = liste(l) Then Sheets("database").Range("KH" & l + 2).Value = CDate(mdir)
 
 
 
End Select
Next
Merci énormément par avance!!

Adrien