D
damien
Guest
bonjour le le forum
lorsque j'indique une date qui n'est pas sur ma feuille une me renvoi une erreur 1004 et je voudrai qu'il m'affiche un msgbox 'saisir une autre date'.
Voici ma macro
ActiveSheet.Protect DrawingObjects:=False, Contents:=False, Scenarios:=False
Selection.Sort Key1:=Range('A17'), Order1:=xlAscending, Key2:=Range('G17' _
), Order2:=xlAscending, Key3:=Range('C17'), Order3:=xlDescending, Header _
:=xlGuess, OrderCustom:=1, MatchCase:=False, Orientation:=xlTopToBottom
ActiveSheet.Protect DrawingObjects:=True, Contents:=True, Scenarios:=True
Label2.Visible = False
ListBox1.Clear
ListBox1.ColumnCount = 9
ListBox1.ColumnWidths = '60;130;110;60;60;110;80;200;200'
ListBox1.ColumnHeads = True
Dim TheDate As Date ' Déclare les variables.
Dim Msg
Dim c As Range
TheDate = InputBox('Entrez une date (jj/mm/aaa)')
Label2 = Date - DateDiff('d', TheDate, Now)
Label3 = 'Récapitulatif contrôles depuis le :' & TheDate
lafin = Worksheets('base peche').Range('A65536').End(xlUp).Row + 1
For N = 1 To lafin
If Worksheets('base peche').Range('A' & N) = CDate(Label2) Then
Debut = N
Exit For
End If
Next N
For N = Debut To lafin
ListBox1.AddItem Worksheets('base peche').Range('A' & N)
Next N
For N = 1 To ListBox1.ListCount - 1
ListBox1.List(N - 1, 1) = Worksheets('base peche').Range('c' & N + Debut - 1)
ListBox1.List(N - 1, 2) = Worksheets('base peche').Range('d' & N + Debut - 1)
ListBox1.List(N - 1, 3) = Worksheets('base peche').Range('e' & N + Debut - 1)
ListBox1.List(N - 1, 4) = Worksheets('base peche').Range('f' & N + Debut - 1)
ListBox1.List(N - 1, 5) = Worksheets('base peche').Range('g' & N + Debut - 1)
ListBox1.List(N - 1, 6) = Worksheets('base peche').Range('j' & N + Debut - 1)
ListBox1.List(N - 1, 7) = Worksheets('base peche').Range('o' & N + Debut - 1)
ListBox1.List(N - 1, 8) = Worksheets('base peche').Range('p' & N + Debut - 1)
Next N
End Sub
merci damien
lorsque j'indique une date qui n'est pas sur ma feuille une me renvoi une erreur 1004 et je voudrai qu'il m'affiche un msgbox 'saisir une autre date'.
Voici ma macro
ActiveSheet.Protect DrawingObjects:=False, Contents:=False, Scenarios:=False
Selection.Sort Key1:=Range('A17'), Order1:=xlAscending, Key2:=Range('G17' _
), Order2:=xlAscending, Key3:=Range('C17'), Order3:=xlDescending, Header _
:=xlGuess, OrderCustom:=1, MatchCase:=False, Orientation:=xlTopToBottom
ActiveSheet.Protect DrawingObjects:=True, Contents:=True, Scenarios:=True
Label2.Visible = False
ListBox1.Clear
ListBox1.ColumnCount = 9
ListBox1.ColumnWidths = '60;130;110;60;60;110;80;200;200'
ListBox1.ColumnHeads = True
Dim TheDate As Date ' Déclare les variables.
Dim Msg
Dim c As Range
TheDate = InputBox('Entrez une date (jj/mm/aaa)')
Label2 = Date - DateDiff('d', TheDate, Now)
Label3 = 'Récapitulatif contrôles depuis le :' & TheDate
lafin = Worksheets('base peche').Range('A65536').End(xlUp).Row + 1
For N = 1 To lafin
If Worksheets('base peche').Range('A' & N) = CDate(Label2) Then
Debut = N
Exit For
End If
Next N
For N = Debut To lafin
ListBox1.AddItem Worksheets('base peche').Range('A' & N)
Next N
For N = 1 To ListBox1.ListCount - 1
ListBox1.List(N - 1, 1) = Worksheets('base peche').Range('c' & N + Debut - 1)
ListBox1.List(N - 1, 2) = Worksheets('base peche').Range('d' & N + Debut - 1)
ListBox1.List(N - 1, 3) = Worksheets('base peche').Range('e' & N + Debut - 1)
ListBox1.List(N - 1, 4) = Worksheets('base peche').Range('f' & N + Debut - 1)
ListBox1.List(N - 1, 5) = Worksheets('base peche').Range('g' & N + Debut - 1)
ListBox1.List(N - 1, 6) = Worksheets('base peche').Range('j' & N + Debut - 1)
ListBox1.List(N - 1, 7) = Worksheets('base peche').Range('o' & N + Debut - 1)
ListBox1.List(N - 1, 8) = Worksheets('base peche').Range('p' & N + Debut - 1)
Next N
End Sub
merci damien