Excel VBA Copier coller imcomplet

Fermé
Tobar4 Messages postés 261 Date d'inscription jeudi 28 janvier 2010 Statut Membre Dernière intervention 7 avril 2014 - 28 sept. 2012 à 09:49
f894009 Messages postés 17221 Date d'inscription dimanche 25 novembre 2007 Statut Membre Dernière intervention 4 janvier 2025 - 28 sept. 2012 à 10:45
Bonjour,

Je travaille actuellement sur une macro qui permet d'aller dans un onglet "Saisie de la commande" pour copier 1 à 3 lignes, pour les coller dans un onglet "Bilan".

Le copier coller fonctionne pour la désignation (colonne E), mais pour les deux autres champs il ne m'inscrit pas la dernière ligne. Je m'explique : il y a trois informations à copier coller par ligne : la référence pièce, la quantité et le numéro de la commande.

Lorsque je saisis 3 lignes, il va me recopier les 3 informations pour les 2 premières lignes, et seulement la référence pour la 3eme.
Si je saisis seulement 2 lignes, il me recopiera les 3 informations pour la première ligne, et seulement la référence pour la deuxième ligne.

Comment corriger ce problème ?

Voici mon code :


Dim Lign As Long

Lign = (Worksheets("Base de données").Range("E9").End(xlDown).Row + 1)

Worksheets("Base de données").Range("E" & Lign).Value = Worksheets("demande de mise à dispo").Range("A19")


Dim L2 As Long

L2 = (Worksheets("Base de données").Range("E9").End(xlDown).Row)
Worksheets("Base de données").Range("H" & L2).Value = Worksheets("demande de mise à dispo").Range("D19")

L2 = (Worksheets("Base de données").Range("E9").End(xlDown).Row)
Worksheets("Base de données").Range("B" & L2).Value = Worksheets("demande de mise à dispo").Range("I19")

Dim Lign2 As Long

Lign2 = (Worksheets("Base de données").Range("E9").End(xlDown).Row + 1)

Worksheets("Base de données").Range("E" & Lign2).Value = Worksheets("demande de mise à dispo").Range("A20")


Dim L3 As Long

L3 = (Worksheets("Base de données").Range("E9").End(xlDown).Row)
Worksheets("Base de données").Range("H" & L3).Value = Worksheets("demande de mise à dispo").Range("D20")

L3 = (Worksheets("Base de données").Range("E9").End(xlDown).Row)
Worksheets("Base de données").Range("B" & L3).Value = Worksheets("demande de mise à dispo").Range("I20")


Dim Lign3 As Long

Lign3 = (Worksheets("Base de données").Range("E9").End(xlDown).Row + 1)

Worksheets("Base de données").Range("E" & Lign3).Value = Worksheets("demande de mise à dispo").Range("A21")


Dim L4 As Long

L4 = (Worksheets("Base de données").Range("E9").End(xlDown).Row)
Worksheets("Base de données").Range("H" & L4).Value = Worksheets("demande de mise à dispo").Range("D21")

L4 = (Worksheets("Base de données").Range("E9").End(xlDown).Row)
Worksheets("Base de données").Range("B" & L4).Value = Worksheets("demande de mise à dispo").Range("I21")


A voir également:

1 réponse

f894009 Messages postés 17221 Date d'inscription dimanche 25 novembre 2007 Statut Membre Dernière intervention 4 janvier 2025 1 712
28 sept. 2012 à 10:45
Bonjour,
Il nous faudrait un fichier exemple pour comprendre vos besions.

Pour mettre a dispo: https://www.cjoint.com/
N'oubliez pas de copier le lien pour votre fichier

A+
0