VBA - Copier/Coller sans lignes masquées en Valeur + Format

Bonjour à tous !

Après différentes recherches sur le web j'ai trouvé des infos que je compile mais là je bloque un peu ! Je suis un débutant sur VBA :/

J'essaie de faire une macro qui en un clic:

1/ Copier ma zone d'impression (ou zone définie) de mon Excel actuel, sans les lignes masquées ! ==> Je galère !

2/ Ouvre une boite de dialogue pour créer un nouvel Excel avec le nom rentré dans la boite de dialogue ==> C'est OK

3/ Coller le contenu dans ce nouveau doc en Valeur et en gardant la mise en forme initiale ==> Je galère !

4/ Fermer ce doc Excel généré. ==> OK

En gros je n'arrive pas à faire l'opération de copier/coller avec les "contraintes" PrintArea ou zone définie et sans les lignes masquées et les 2 opérations en valeur et forme...

Pour info, la zone d'impression est toujours une range("A1:L1042")... mais sans prendre les lignes masquées !

Voilà mon code actuel:

Private Sub CommandButton5_Click()
ScreenUpdating = False
Dim nomdevis As String
Dim Chemin As String
    Chemin = CreateObject("WScript.Shell").SpecialFolders("Desktop")
    nom = InputBox("Titre Excel")

'processus de copier coller la "PrintArea" ou zone définie normalement ici ?

'creation du nouveau Excel & fermeture (ça marche)
 Workbooks.Add
    ChDir Chemin & "XXX"
    ActiveWorkbook.SaveAs Filename:=Chemin & "XXX" & nom

ActiveWorkbook.Close

Dim good
good = MsgBox("BRAVO", vbOKOnly)

ScreenUpdating = True

End Sub

Avez-vous des pistes ?

Merci pour votre aide et bonnes fêtes !

Bonjour et bienvenue sur le forum

Essaie d'adapter ce code au tien :

Sub essai()
    Dim f As Worksheet, fd As Worksheet
    Dim ln&, lgn&
    Application.ScreenUpdating = False
    Set f = ActiveSheet
    Workbooks.Add
    Set fd = ActiveSheet
    lgn = 0
    For ln = 1 To 1042
         If f.Rows(ln & ":" & ln).EntireRow.Hidden = False Then
             f.Range("A" & ln & ":L" & ln).Copy
             lgn = lgn + 1
             fd.Range("A" & lgn).PasteSpecial xlPasteAll
         End If
     Next ln
End Sub

Bye !

Bonjour,

Merci pour la réponse ! Je test ça ce soir !

Rechercher des sujets similaires à "vba copier coller lignes masquees valeur format"