Copier ligne si cellule non vide

Bonjours à Toutes et à Tous

Est-ce que vous aurez un exemple d'une macro pour copier une la ligne de A --> H depuis feuil1 vers d--> K feuil2 si la valeur de A est <> " "

Merci d'avance pour votre aide !

salutations

H

Bonjour hamila92,

La réponse est la :

https://forum.excel-pratique.com/viewtopic.php?f=2&t=47390

Pour te simplifier la tache, voici le code qui a été utilisé :

Option Explicit
Sub Copier()
Dim C As Range
Dim LigneAjout As Long
    With Worksheets("Feuil1")
        For Each C In .Range("F2:F" & .Range("F" & Rows.Count).End(xlUp).Row)
            If IsEmpty(C) Then
                LigneAjout = Worksheets("Feuil2").Range("A" & Rows.Count).End(xlUp).Offset(1).Row
                C.EntireRow.Copy Worksheets("Feuil2").Range("A" & LigneAjout)
            End If
        Next C
    End With
End Sub

Il te reste à l'adapter à ton utilisation

Bonjour,

Merci j'ai déjà vue cette macro le soucis est que je ne copie pas la ligne entière (même position) entre les deux feuille excel donc j'au un message d'erreur ...

Si un coup de main, c'est avec grand joie

@+

Bonjour hamila,

Je te propose ce fichier Excel :

239exo-hamila.xlsm (16.24 Ko)

À l'ouverture du fichier, tu es sur "Feuil2" : entièrement vide.

Va sur "Feuil1" ; Ctrl e ➯ travail effectué

Alt F11 pour voir la macro, puis revenir sur Excel

Si besoin, tu peux demander une adaptation.

Merci de me dire si ça te convient.

dhany

Bonjour hamila,

Dans ton message du 27 mars à 11:23, tu as écrit : « Si un coup de main, c'est avec grande joie » ; je n'en doute pas, et c'est avec grande joie que j'ai posté une réponse à ton intention ! malheureusement, je crois que tu as oublié ton sujet, car actuellement, sur mon message du 27 mars à 16:32, je peux voir que mon fichier Excel n'a toujours pas été téléchargé.

Aussi, le présent message est également un moyen de faire remonter ton sujet !

(en espérant qu'il t'intéresse toujours ! )

dhany

Bonjour,

Ou encore avec affectation des valeurs :

Sub Test()

    Dim Plage As Range
    Dim Cel As Range
    Dim I As Long

    With Worksheets("Feuil1"): Set Plage = .Range(.Cells(1, 1), .Cells(.Rows.Count, 1).End(xlUp)): End With

    For Each Cel In Plage

        If Cel.Value <> "" Then

            I = I + 1 'pour que les valeurs soient les unes au dessous des autres
            'ou "I = Cel.Row" si on veut conserver la même ligne !
            Worksheets("Feuil2").Range("D" & I & ":K" & I).Value = _
            Worksheets("Feuil1").Range("A" & Cel.Row & ":H" & Cel.Row).Value

        End If

    Next Cel

End Sub

Hello,

désolé, j'avais plusieurs questions et demande en même temps donc j'ai du zappé certaines de mes question

Merci vraiment @Theze

Bonjour hamila,

Dans ton message du 27 mars à 11:23, tu as écrit : « Si un coup de main, c'est avec grande joie » ; je n'en doute pas, et c'est avec grande joie que j'ai posté une réponse à ton intention ! malheureusement, je crois que tu as oublié ton sujet, car actuellement, sur mon message du 27 mars à 16:32, je peux voir que mon fichier Excel n'a toujours pas été téléchargé.

Aussi, le présent message est également un moyen de faire remonter ton sujet !

(en espérant qu'il t'intéresse toujours ! )

dhany

Hello hamila,

Merci d'être revenue sur ton sujet et d'avoir téléchargé mon fichier ! merci aussi pour les

dhany

Rechercher des sujets similaires à "copier ligne vide"