Bonjour à tous,
J'ai réalisé un petit programme sur VBA: Celui-ci fonction très bien sauf la dernière ligne qui engendre une erreur 400. Cette ligne est un filtre sur un tableau.
Lorsque j'execute le programme en ligne par ligne avec les curseurs, aucun problème n'apparait. Quelqu'un aurait déjà eu ce problème et connais la solution ?
Voici le code:
Seule la dernière ligne pose problème. Et si je fais une macro avec uniquement les deux dernière lignes, cela fonctionne aussi.
Par avance merci de votre aide
Cordialement Vorens
J'ai réalisé un petit programme sur VBA: Celui-ci fonction très bien sauf la dernière ligne qui engendre une erreur 400. Cette ligne est un filtre sur un tableau.
Lorsque j'execute le programme en ligne par ligne avec les curseurs, aucun problème n'apparait. Quelqu'un aurait déjà eu ce problème et connais la solution ?
Voici le code:
Code:
Sub trouveDate()
Sheets("00098").Activate
nombre1 = Range("T2").Value
Set celluletrouvee1 = Range("F1:F65000").Find(nombre1, lookat:=xlWhole)
Ligne1 = celluletrouvee1.Row
nombre2 = Range("T3").Value
Set celluletrouvee2 = Range("F1:F65000").Find(nombre2, lookat:=xlWhole)
Ligne2 = celluletrouvee2.Row
ligne3 = Ligne2 - 1
Range("B" & Ligne1 & ":Q" & ligne3).Select
Application.CutCopyMode = False
Selection.Copy
Sheets("calcul").Select
Range("A2").Select
ActiveSheet.Paste
'Filtre des état non désirables
Sheets("calcul").Activate
Application.ScreenUpdating = False
For n = Range("A65536").End(xlUp).Row To 1 Step -1
If InStr(Range("B" & n), Sheets("Calcule BIS").Range("B1")) <> 0 Or InStr(Range("B" & n), Sheets("Calcule BIS").Range("b2")) Then
Rows(n).Delete
End If
Next n
Application.ScreenUpdating = True
'Filtre des état restant
Columns("B:B").Select
Range("B1:B65000").AdvancedFilter Action:=xlFilterInPlace, Unique:=True
Range("B2").Select
Range(Selection, Selection.End(xlDown)).Select
Selection.Copy
Sheets("Calcule BIS").Select
Range("A1").Select
ActiveSheet.Paste
Sheets("calcul").Select
ActiveSheet.ShowAllData
'Déclaration de variable des recettes utilisées
Sheets("Calcul").Activate
Recette1 = Range("A1").Value
Recette2 = Range("A2").Value
Recette3 = Range("A3").Value
Recette4 = Range("A4").Value
Recette5 = Range("A5").Value
Recette6 = Range("A6").Value
Recette7 = Range("A7").Value
Recette8 = Range("A8").Value
Recette9 = Range("A9").Value
Recette10 = Range("A10").Value
'Filtre des états pour comptabilisation
Range("B2").Select
Range(Selection, Selection.End(xlDown)).Select
Selection.AutoFilter
Selection.AutoFilter Field:=2, Criteria1:=Sheets("Calcule BIS").Range("A1").Value
End Sub
Seule la dernière ligne pose problème. Et si je fais une macro avec uniquement les deux dernière lignes, cela fonctionne aussi.
Par avance merci de votre aide
Cordialement Vorens