Macro copie valeurs plage d'un onglet vers une zone d'un autre onglet

Bonjour

Je cherche à créer une macro qui permettrait de copier les valeurs d'une plage d'une feuille vers une autre feuille.

En fait il s'agirait de copier les lignes non vide vers la 1ere ligne non vide d'une autre feuille.

J'ai essayé de modifier un code déja existant mais il me copie colle les ligne et non pas seulement les valeurs.

Sub Transfert()
Dim lig As Long
Sheets("Charge Par Article").Select
'Selection du tableau à partir de la cellule F6
For lig = 2 To ActiveSheet.Range("A" & Rows.Count).End(xlUp).Row
    If Application.CountA(Rows(lig)) > 0 Then
'Copie de la ligne entière si non vide sur la feuille "Feuil2"
        Rows(lig).Copy Destination:=Sheets("Analyse").Rows(Sheets("Analyse").Range("A" & Rows.Count).End(xlUp).Row + 1)
    End If
Next lig

MErci.

Bonjour piouk02

Sujet maintes fois abordé, avec une petite recherche, je pense que vous auriez trouvé

Ca se fait uniquement en 2 étapes

Rows(lig).Copy
Sheets("Analyse").Rows(Sheets("Analyse").Range("A" & Rows.Count).End(xlUp).Row + 1).PasteSpecial xlValues 

A+

Rows(lig).Copy
Sheets("Analyse").Rows(Sheets("Analyse").Range("A" & Rows.Count).End(xlUp).Row + 1).PasteSpecial xlValues 

Bonjour

oui j'ai cherché sur plusieurs forum.

Mais je n'ai pas trouvé de solution répondant à mon besoin.

Le code proposé ne me permet pas de copier/coller une plage de cellule mais une ligne entière. Ce qui fait que dans l'onglet de destination cela efface les données présentes et les formules de calcul.

Re,

Désolé, mais je ne fais que répondre à votre demande

En fait il s'agirait de copier les lignes non vide vers la 1ere ligne non vide d'une autre feuille.
... il me copie colle les lignes et non pas seulement les valeurs.

Soyez plus explicite la prochaine fois

Bonne chance

bonjour BrunoM45,piouk02,

il y a une chose qui n'est pas résolu, si la cellule A est vide, mais un des 5 cellules voisin ne l'est pas, alors cette plage sera copié, okay ! Mais la ligne suivante ecrasera le précédent ....

' A tester copier les valeurs de la la plage A:F pour lesquelles A et non vide de l'onglet charge vers la 1ere ligne vide de l'onglet analyse
Sub Transfert()
     Dim lig   As Long
     Sheets("Charge Par Article").Select
     'Selection du tableau à partir de la cellule F6
     For lig = 2 To ActiveSheet.Range("A" & Rows.Count).End(xlUp).Row
          Set c = Cells(lig, 1).Resize(, 6)
          If Application.CountA(c) > 0 Then
               'Copie de la ligne entière si non vide sur la feuille "Feuil2"
               c.Copy
               Sheets("Analyse").Range("A" & Rows.Count).End(xlUp).Offset(1).PasteSpecial xlValues
          End If
     Next lig
     'Selectionne la cellule A1
     Range("A1").Select
End Sub

Sub Transfert_Sans_Select_Avec_With()
     Dim lig   As Long
     With Sheets("Charge Par Article")
          'Selection du tableau à partir de la cellule F6
          For lig = 2 To .Range("A" & Rows.Count).End(xlUp).Row
               Set c = .Cells(lig, 1).Resize(, 6)
               If Application.CountA(c) > 0 Then
                    'Copie de la ligne entière si non vide sur la feuille "Feuil2"
                    c.Copy
                    Sheets("Analyse").Range("A" & Rows.Count).End(xlUp).Offset(1).PasteSpecial xlValues
               End If
          Next lig
          'Selectionne la cellule A1
          Application.Goto .Range("A1")
     End With
End Sub

Merci beaucoup BsAlvcela fonctionne

Rechercher des sujets similaires à "macro copie valeurs plage onglet zone"