Erreur 400 dans une macro

Roverman

XLDnaute Nouveau
Bonjour tout le monde,

Voila mon problème, quand je lance cette macro pour sélectionner plusieurs lignes sous conditions, une erreur 400 apparait. Pourtant j'ai déjà ce fragment de code dans mon programme principale et il fonctionne bien.

Alors pour essayer de régler ce problème j'ai tenté le débogage avec f8, il m'indique que la ligne 4 comporte une erreur 1004. Je ne comprend pas très bien pourquoi il m'annonce au départ une erreur 400 puis une 1004, à moins que d'autres erreurs soient présentes dans les lignes suivantes.

J'espère que vous pourrez m'éclairer sur ce problème.

Je vous remercie, bonne journée.

Code:
Sub SelectionTouT()

Dim Cel As Range
Sheets("Entrée").Select
    For Each Cel In Range(F2, F50) 'traite les cellules colonne F
    If Application.CountA([A1:E1].Offset(Cel.Row - 1)) < 5 Then _ 'Sur cette ligne : erreur 1004
    Cel.Value = "" 'si ligne incomplète aucun transfert
        If Cel <> "" Then 'si x existe
        Cel = ""
        Cel.Offset(0, 1).Value = "" 'effacement repère colonne G
        Range(Cel.Offset(0, -5), Cel.Offset(0, 1)).Interior.ColorIndex = 0 'effacement couleur ligne
        Sheets("Rapport actuel").Rows(Application.Match(0, _
        Sheets("Rapport actuel").Range("M:M"), 0)).Delete 'suppression de la ligne en feuille "Rapport actuel" si repère = 0
    End If
    Next
    
    If (Cel.Offset(0, 1) <> 1) Then
            Cel.Offset(0, 1).Value = 1 'repère colonne G
            Range(Cel.Offset(0, -5), Cel.Offset(0, 1)).Interior.ColorIndex = 15 'mise en couleur
                With Sheets("Rapport actuel").Range("A65536").End(xlUp) 'dernière cellule colonne A
                .Offset(1).FormulaR1C1 = "=Entrée!R" & Cel.Row & "C1" 'transfert Opération
                .Offset(1, 1).FormulaR1C1 = "=Entrée!R" & Cel.Row & "C2" 'transfert Temps"
                .Offset(1, 2).FormulaR1C1 = "=Entrée!R" & Cel.Row & "C3" 'transfert Taux
                .Offset(1, 3).FormulaR1C1 = "=Entrée!R" & Cel.Row & "C4" 'transfert Coût"
                .Offset(1, 4).FormulaR1C1 = "=Entrée!R" & Cel.Row & "C5" 'transfert Sous-Traitance et Achat
                .Offset(1, 12).FormulaR1C1 = "=Entrée!R" & Cel.Row & "C7" 'transfert Repère colonne M
                'Sheets("Rapport").Range("A2:E65536").Sort Key1:=Sheets("Rapport").Range("A1"), Order1:=xlDescending 'tri décroissant
                End With
    End If
End Sub
 

Pièces jointes

  • Chiffrage Méthodes.xls
    101.5 KB · Affichages: 62

Roverman

XLDnaute Nouveau
Re : Erreur 400 dans une macro

Bonjour Pierrot,

Effectivement, je suis pas un as mais celle là j'aurai quand même pu m'en apercevoir !! Maintenant les lignes sélectionnées s'effacent bien, merci :)

Par contre la deuxième partie de la macro ne fonctionne pas. J'ai un message d'erreur qui me dit :"Variable objet ou variable de bloc With non définie" Pourtant mes variables m'ont l'air bien déclarées, j'espère que la raison n'est pas aussi évidente que la précédente erreur.

Merci
 

Discussions similaires

Réponses
2
Affichages
175

Statistiques des forums

Discussions
312 470
Messages
2 088 700
Membres
103 927
dernier inscrit
Mkeal