Contrôler si une plage est vide après un filtre

Bonjour,

Assez novice en vba, je coince pour effectuer un contrôle dans ma macro.

l'Objectif du contrôle: avant de faire les copier/coller suite aux filtres appliqués, je voudrais tester qu'il y a bien des données à copier/coller une fois filtré.

mon code bug à ce niveau

Range("A7:A" & taille).SpecialCells(xlCellTypeVisible).Select
Selection.Copy

Cela fonctionne quand il y a des lignes, mais si pas de lignes,cela ne fonctionne pas.

du coup je voudrais tester avant de faire le select.

ci dessous le début du code.

Private Sub CommandButton1_Click()

     Application.ScreenUpdating = True
Dim datedebutbis As Single
Dim datefinbis As Single

datedebut = CDate(Format(TextBox1.Value, "dd/mm/yyyy"))
datefin = CDate(Format(TextBox2.Value, "dd/mm/yyyy"))

'Workbooks.Open Filename:= _
        '"XX"
    Windows("Plan de charge 2015 - REGION EE_V3.xls").Activate

datedebutbis = datedebut
TextBox3.Value = datedebutbis

datefinbis = datefin
TextBox4.Value = datefinbis

        Dim taille As Integer
taille = WorksheetFunction.CountA(Columns("A:A")) + 1

    ActiveSheet.Range("$A$6:$CZ$952").AutoFilter Field:=41, Criteria1:= _
        ">=" & TextBox3.Value, Operator:=xlAnd, Criteria2:="<=" & TextBox4.Value

    Windows("Plan de charge 2015 - REGION EE_V3.xls").Activate
        ActiveSheet.Range("$A$6:$CZ$952").AutoFilter Field:=32, Criteria1:= _
        "BPU annexe 3"
        ActiveSheet.Range("$A$6:$CZ$952").AutoFilter Field:=36, Criteria1:="="

Range("A7:A" & taille).SpecialCells(xlCellTypeVisible).Select
Selection.Copy

Windows("XX").Activate
Sheets("BPU-Prest.Compl Annexe 3").Select
    DerniereLigne = Range("A" & Rows.Count).End(xlUp).Row
    ligne = DerniereLigne + 1
    Range("A" & ligne).Select
    Selection.PasteSpecial Paste:=xlPasteValues, operation:=xlNone, SkipBlanks _
    :=False, Transpose:=False

    Windows("Plan de charge 2015 - REGION EE_V3.xls").Activate

Merci par avance et a dites moi si je ne suis pas suffisant clair.

Bonjour et bienvenu(e)

Modifies la fin de la macro

 If Application.Subtotal(103, Columns("A")) > 1 Then
    Range("A7:A" & taille).SpecialCells(xlCellTypeVisible).Select
    Selection.Copy

    Windows("XX").Activate
    Sheets("BPU-Prest.Compl Annexe 3").Select
    DerniereLigne = Range("A" & Rows.Count).End(xlUp).Row
    ligne = DerniereLigne + 1
    Range("A" & ligne).Select
    Selection.PasteSpecial Paste:=xlPasteValues, operation:=xlNone, SkipBlanks _
                                                                  :=False, Transpose:=False

    Windows("Plan de charge 2015 - REGION EE_V3.xls").Activate
  End If

Si pas ça

Bonjour Banzai64,

C'est exactement ce que je souhaitais.

J'ai juste remplacer le 1 par 6 car mon entête de tableau est à la ligne 6.

Merci pour ta réponse rapide.

Rechercher des sujets similaires à "controler plage vide filtre"