Macro pour deplacer des valeurs a une autre feuille

Bonjours a vous tous,

Je suis débutant dans le Coding,

j'ai passer la fin de semaine a regarder des formations et je vais continuer avec ceux de ce site mais d'ici être en mesure de le faire moi même ,

Est-ce que quelqu'un pourrait m'aider a faire un petit script pour que je comprenne un peu plus avec un exemple concret .

Je vais avoir 3 colonnes dans ma feuil1 , la colonnes A va servir en entrer des quantités et la colonne b et c seront de la description (et ce a partir de de la cellule 5)

j'aimerais que toute les lignes ou j'ai inscrit un caractère dans la colonne A soit copié dans la feuil2 a partir de la rangé 20.

, ensuite si j'efface le contenue de la feuil2 je veux pouvoir recommencer .

si jamais quelqu'un peu m'aider ce sera grandement apprécié

Mathieu

Bonjour

j'aimerais que toute les lignes ou j'ai inscrit un caractère dans la colonne A soit copié dans la feuil2 a partir de la rangé 20., ensuite si j'efface le contenue de la feuil2 je veux pouvoir recommencer .

essayez avec ce code à placer dans un module. vous pouvez associer le code à un bouton placé sur une feuille

Sub test()
Dim i As Byte
Dim dlg As Byte

dlg = Sheets("feuil2").Range("A" & Rows.Count).End(xlUp).Row

If dlg < 20 Then dlg = 20
For i = 5 To Sheets("FEUIl1").Range("A" & Rows.Count).End(xlUp).Row
    If Sheets("feuil1").Range("A" & i) <> "" Then
        Sheets("feuil2").Range("A" & dlg + 1) = Sheets("feuil1").Range("A" & i)
        Sheets("feuil2").Range("B" & dlg + 1) = Sheets("feuil1").Range("b" & i)
        Sheets("feuil2").Range("C" & dlg + 1) = Sheets("feuil1").Range("C" & i)
        dlg = dlg + 1
    End If
Next i
End Sub

Cordialement

Bonjour,

Autre proposition, macro dans le module de la feuille 1, et macro pour effacer dans le module standard 1

saisissez une valeur en A à partir de la ligne 6 de la feuille 1

Cdlt

excellent , cela fonctionne pour la fonction effacer,

maintenant plus qu'a attendre un script pour le déplacement de mes lignes feuil1 a la feuile2

maintenant plus qu'a attendre un script pour le déplacement de mes lignes feuil1 a la feuile2

??? C'est ce que je vous ai proposé et vous n'aviez pas demandé un code pour effacer

maintenant plus qu'a attendre un script pour le déplacement de mes lignes feuil1 a la feuile2

Avez-vous essayez de mettre quelque chose dans la colonne A de la feuille 1 et ensuite d'aller voir le résultat dans la feuille2?

ha oui javais pas vue votre message dsl,

tous fonctionne maintenant ,

merci a vous 2!

Ok.

Si vous utilisez le code que je vous ai proposé, en l'associant à un bouton c'est vous qui décidez quand l'exportation vers la feuille 2 doit se faire.

Cordialement

@+ Dan

Votre version fonctionne très bien merci .

Par contre j'aimerais quand j'appuie sur le bouton et que les valeur sont transférer sur la page 2 , que les quantités (¢olonne A) sur la page 1 s'efface .

âpres ça je vous achale plus ;)

merci a vous

Par contre j'aimerais quand j'appuie sur le bouton et que les valeur sont transférer sur la page 2 , que les quantités (¢olonne A) sur la page 1 s'efface .

En dessous de cette ligne

Sheets("feuil2").Range("A" & dlg + 1) = Sheets("feuil1").Range("A" & i)

mettez ceci

Sheets("feuil1").Range("A" & i).clearcontents

Cordialement

merci a vous

@DAN

Bonsoir Dan

J'ai essayé a plusieurs reprise sans succès d'ajouter une nouvelle feuille (feuil3) et d'y faire la même logique que la feuil1 a la feuil2 mais a chaque fois les nombres ne resulte pas en ordre de feuille mais plutot tout melangé au niveau des résultats (valeur tranféré de feuil1, feuil2 feuil1...) et même certain nombre absent.

Si vous pourriez m'ajouter cette ajout ce serait encore une fois très apprécié

(ajout d'une nouvelle feuille (feuil3) et les résultat sur (feuil2) en ordre de feuille)

au plaisir,

mathieu

Bonjour

.....'ajouter une nouvelle feuille (feuil3) et d'y faire la même logique que la feuil1 a la feuil2 mais a chaque fois les nombres ne resulte pas en ordre de feuille mais plutot tout melangé au niveau des résultats (valeur tranféré de feuil1, feuil2 feuil1...) et même certain nombre absent.

Je ne suis pas sûr d'avoir compris là .....Vous voulez transférer les données de la feuil1 vers la feuil2 et la feuil3 et conserver le même ordre dans ces deux feuilles ?

Jaimerais pouvoir créer plusieurs feuille comme la feuil1 (1 autre présentement mais 20 autre dans le future) qui vont se transféré sur la feuil2 (résultat finale)

J'aimerais que les résultats sur la feuil2 ne soit pas toute mélangé , mais plutôt feuil1 ensuite (feuil3-4-5--6...)

J'espère avoir été plus clair .

merci

Ok. J'ai compris.

Vous gardez le nom des feuilles feuil1, feuil2 etc.... la feuil2 étant la synthèse de toutes les autres feuilles ?

Sinon vous pouvez tester ceci

Sub test()
Dim i As Byte
Dim dlg As Byte
Dim sh As Worksheet

dlg = Sheets("Feuil2").Range("A" & Rows.Count).End(xlUp).Row
For Each sh In Worksheets
    If sh.Name <> "Feuil2" Then
    If dlg < 20 Then dlg = 20
    For i = 5 To Sheets(sh.Name).Range("A" & Rows.Count).End(xlUp).Row
        If Sheets(sh.Name).Range("A" & i) <> "" Then
            Sheets("Feuil2").Range("A" & dlg + 1) = Sheets(sh.Name).Range("A" & i)
            Sheets(sh.Name).Range("A" & i).ClearContents
            Sheets("Feuil2").Range("B" & dlg + 1) = Sheets(sh.Name).Range("B" & i)
            Sheets("Feuil2").Range("C" & dlg + 1) = Sheets(sh.Name).Range("C" & i)
            dlg = dlg + 1
        End If
    Next i
    End If
Next sh
End Sub
Rechercher des sujets similaires à "macro deplacer valeurs feuille"