Récupération valeur TDC vers autre feuille

Bonsoir à tous,

Voici mon projet :

1) Définir la dernière ligne non vide dans la feuille "LISTING BESOIN" (l'entête de ma mise en page comprend les lignes 1 à 6 donc je démarre à Cells (7,...)

2) Récupérer dans la feuille "LISTING BESOIN" les valeurs du TDC qui sont dans la feuille "BESOIN MATIERE"

J'essaye de récupérer chaque valeur de la colonne matière (feuille "BESOIN MATIERE") pour les transférer dans la première cellule non-vide de la feuille "LISTING BESOIN" :

Sub test()

Dim DLig As Long
DLig = Sheets("LISTING BESOIN").Cells(7, 1).End(xlDown).Row + 1

For i = 2 To 10

Sheets("LISTING BESOIN").Cells(DLig, 1).Value = Cells(i, 1).Value
DLig = DLig + 1

Next

End Sub

'DLig = DLig + 1

Malheureusement, ça ne fonctionne pas, avez-vous une idée d'où ça bloque ?

Cordialement

Bonjour,

C'est un peu confus !...

Un petit fichier et des explications claires seraient un plus.

Cdlt.

Très bien, je vais tenter de détailler :

1) J'ai un TCD dans la feuille "BESOIN MATIERE" ;

2) Je tente de récupérer les valeurs de ce TCD dans la feuille "LISTING BESOIN" ;

3) Je tente de récupérer ces valeurs, dans cette feuille, dès qu'excel trouve la première cellule vide dans la colonne A ;

4) Je souhaite récupérer toute la colonne A de la feuille "BESOIN MATIERE", dans la colonne A de la feuille "LISTING BESOIN" (dès que la cellule vide est trouver)

Pour la réponse "1)" j'ai mon TCD

Pour la réponse "2", le code :

Dim DLig As Long
DLig = Cells(7, 1).End(xlDown).Row + 1

Me semble, à mon niveau correct.

Ensuite, pour le "3)" :

Cells(DLig, 1) = Sheets("BESOIN MATIERE").Cells(2, 1)

Me semble également bon, pour démarrer (du moins..) mais il me faut une boucle..

Je suis donc partie sur :

For i = 2 To 10

Cells(DLig, 1) = Sheets("BESOIN MATIERE").Cells(i, 1)
i = i + 1

Next

Le problème, c'est que ça ne fonctionne pas, et que la boucle va de la ligne 2 à 10 (hors je pourrais très bien avoir 50000 lignes !)

Cordialement

Il semblerait que ce code fonctionne :

Sub test()

Dim DLig As Long
DLig = Cells(7, 1).End(xlDown).Row + 1

For i = 2 To 20

Cells(DLig, 1) = Sheets("BESOIN MATIERE").Cells(i, 1)
DLig = DLig + 1

Next i

End Sub

Il ne reste plus que je trouve pour que i ne soit pas fixe.

Tout fonctionne :

Sub test()

Dim DLig As Long, Dlig2 As Long
DLig = Cells(7, 1).End(xlDown).Row + 1
Dlig2 = Sheets("BESOIN MATIERE").Cells(2, 1).End(xlDown).Row

For i = 2 To Dlig2

Cells(DLig, 1) = "PANNEAUX"
Cells(DLig, 2) = Sheets("BESOIN MATIERE").Cells(i, 1)
Cells(DLig, 6) = Sheets("BESOIN MATIERE").Cells(i, 3)

DLig = DLig + 1

Next i

End Sub

Merci à tous

Rechercher des sujets similaires à "recuperation valeur tdc feuille"