[VBA] copié vers une autre feuille avec condition

Anamiya

XLDnaute Nouveau
Bonjour à tous,

Me voilà bloqué sur le code suivant avec une erreur 13 lors de l'exécution (1ère ligne d' "If")

Le but de la macro est de copié les lignes dans une autres feuilles seulement si la colonne B de la ligne est en "#N/B" soit une erreur de formule recherchev (oui, excel en néerlandais, ça aide pas).

Code:
Sub Copy_condition()

Dim s As Integer
    s = Sheets("Spiral").Range("B2").End(xlDown).Row

Sheets("New").Select
Range("A2", Range("P" & s)).Select
Selection.ClearContents

Sheets("Spiral").Select

Dim a As Range
For Each a In Range("D2", [D65555].End(xlUp))
    If a Like "#N/B" Then
        Rows(a).Copy
        Sheets("New").Rows(a).Paste
    End If
Next

Sheets("New").Select
    On Error Resume Next
    [A:A].SpecialCells(xlCellTypeBlanks).EntireRow.Delete

End Sub
 

Pièces jointes

  • Exemple copy_condition.xlsm
    20.7 KB · Affichages: 72

Dranreb

XLDnaute Barbatruc
Re : [VBA] copié vers une autre feuille avec condition

Bonjour.
Essayez comme ça :
VB:
Sub Copy_condition()
Dim Cel As Range, L As Long
Blad2.[2:65000].ClearContents
L = 1
For Each Cel In Blad1.Range(Blad1.[D2], Blad1.[D65000].End(xlUp))
    If IsError(Cel.Value) Then L = L + 1: Cel.EntireRow.Copy Blad2.Rows(L)
    Next Cel
End Sub
 

Discussions similaires

Réponses
5
Affichages
244

Statistiques des forums

Discussions
312 491
Messages
2 088 892
Membres
103 982
dernier inscrit
krakencolas