Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

Microsoft 365 Copier les données filtrées

VBA_dev_Anne_Marie

XLDnaute Occasionnel
Bonjour,

Je souhaite copier les données filtrées sur une nouvelles page (avec des en-têtes).
Voici mon code :
VB:
Set ws = ThisWorkbook.Sheets.Add(After:= _
             ThisWorkbook.Sheets(ThisWorkbook.Sheets.Count))
    ws.Name = "supérieurs à 5%"
    
 Sheets("RESULTATS").Range("A1:AQ19000").Copy Destination:=Sheets(" supérieurs à 5%").Range("A1")

Je me demande comment indiquer la range à copier sans passer par le code en "dur" A1:AQ19000.
Merci pour votre aide !
 
Solution
Bonjour @VBA_dev_Anne_Marie

De ce que je comprends je te propose ceci

Le principe on va cherché la dernière ligne utilisé de la colonne AQ (A modifier éventuellement) et on la met dans une variable.

Merci de ton retour

@Phil69970

Phil69970

XLDnaute Barbatruc
Bonjour @VBA_dev_Anne_Marie

De ce que je comprends je te propose ceci

Le principe on va cherché la dernière ligne utilisé de la colonne AQ (A modifier éventuellement) et on la met dans une variable.

Merci de ton retour

@Phil69970
 

Phil69970

XLDnaute Barbatruc
Re
Bonjour @dysorthographie

Je crois que j'ai zappé le mot

données filtrées

VB:
Dim Derlig&

Set ws = ThisWorkbook.Sheets.Add(After:=ThisWorkbook.Sheets(ThisWorkbook.Sheets.Count))
ws.Name = "supérieurs à 5%"
    
With Sheets("RESULTATS")
    Derlig = .Range("A" & Rows.Count).End(xlUp).Row
    .Range("A1:AQ" & Derlig).SpecialCells(xlCellTypeVisible).Copy Destination:=Sheets(" supérieurs à 5%").Range("A1")
End With

@Phil69970
 
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…