Copier-Coller Range peut importe la visibilité

Bonjour,

Je fais face à un problème tout simple en VBA que je n'arrive pas à résoudre.

J'ai des lignes plus ou moins masqués par des filtres que je ne veux pas enlever. Je voudrais que peut importe leur statut (masquée, visible) elle se copie-colle sur un autre onglet. Problème il existe toujours un cas particulier qui fait que je dois réaliser une boucle qui est chiant car long si beaucoup de ligne.

  • Ne copie que les lignes visibles
Dim rng As Range
Set rng = Feuil1.Range("5:9")
rng.Copy Feuil2.Range("A3")
  • Si la première ligne est visible il ne rend pas visible l'ensemble de la range
Dim rng As Range
Set rng = Feuil1.Range("5:9")
rng.EntireRow.Hidden = False
rng.Copy Feuil2.Range("A3")
  • Solution qui marche mais rendre invisible pour rendre visible est bizarre je trouve
Dim rng As Range
Set rng = Feuil1.Range("5:9")
rng.EntireRow.Hidden = True
rng.EntireRow.Hidden = False
rng.Copy Feuil2.Range("A3")
rng.EntireRow.Delete
  • Prend bien les lignes visibles et invisibles mais j'ai pour but de supprimer ces lignes déplacées sauf que lui me laisse les lignes vides et modifie mon rng, donc impossible de supprimer en un second temps (sauf si j'enregistre dans une variable la feuille et dans une autre l'addresse, ce qui est lourd)
Dim rng As Range
Set rng = Feuil1.Range("5:9") 'même avec un Application.CutCopyMode = xlCut
rng.Cut Feuil2.Range("A3")

Bonjour,

Sans voir un fichier....

Et si vous faites comme ceci

Dim rng As Range
Set rng = Feuil1.Range("5:9")
rng.EntireRow.Hidden = False
rng.Copy Feuil2.Range("A3")
rng.EntireRow.Delete

Pas besoin de cacher les lignes puisque vous les supprimer après

Crdlt

Rechercher des sujets similaires à "copier coller range importe visibilite"