Créer un tableau ligne par ligne d'une macro

Bonjour à tous,

Je suis nouveau sur ce forum et j'aurai besoin d'un conseil ou d'une éventuel aide de votre part. Je m'excuse par avance si ce sujet à déjà été traité mais je n'ai, pas, pour ma part,trouver de sujet déjà existant et répondant à ma demande

En effet, je dispose de plusieurs cellule isolées sous Excel et j'aimerais pouvoir créer une ligne dans un tableau contenant la valeur des cellules. Je m'explique...

En fait, j'aimerais que lorsque que l'on appuie sur un bouton, les cellules A7 B6 et C4 (c'est un exemple fictif !) soit sélectionnées, et leurs valeurs copiées dans une ligne d'un tableau à 3 colonnes. De plus je voudrais que lorsque j'appuie une deuxième fois sur le bouton, une deuxième ligne dans le même tableau soit créée sans effacer la précédente. En gros, a chaque clic sur le bouton, une ligne se créer dans le tableau.

Pouvais m'aider au sujet de la macro et du script que je dois écrire sous VBA afin de l'affecter à mon bouton ??

D'avance merci de votre réponse.

Cordialement

Marc N.

bonsoir,

un exemple de macro

Sub copie()
Set ws1 = Worksheets("sheet1")
Set ws2 = Worksheets("sheet2")

' on détermine quelle est la dernière ligne utilisée
derlig = ws2.Range("A" & ws2.Rows.Count).End(xlUp).Row
derlig = derlig + 1

ws2.Range("A" & derlig) = ws1.Range("A7")
ws2.Range("B" & derlig) = ws1.Range("B6")
ws2.Range("C" & derlig) = ws1.Range("C4")

Set ws1 = Nothing
Set ws2 = Nothing
End Sub

Merci pour ta réponse,

Avec l'aide d'un ami j'ai réalisé le code VBA ci-dessous met il ne fonctionne pas et on ne trouve pas ce qui cloche. Excel nous sort "Erreur d'exécution "13". Incompatibilité de type". Pouvez vous m'aider ?

Sub Copie()

Set ws = Worksheets("feuil1")

Dim count As Integer

Dim test As Integer

test = 0

count = 6

While [test <> 1]

If ws.Range("P" & CStr(count)) <> "" Then

count = count + 1

Else

ws.Range("P" & CStr(count)) = ws.Range(" A7 ")

ws.Range("Q" & CStr(count)) = ws.Range(" B6 ")

ws.Range("R" & CStr(count)) = ws.Range(" C4 ")

test = 1

End If

Wend

End Sub

katoine a écrit :

Merci pour ta réponse,

Avec l'aide d'un ami j'ai réalisé le code VBA ci-dessous met il ne fonctionne pas et on ne trouve pas ce qui cloche. Excel nous sort "Erreur d'exécution "13". Incompatibilité de type". Pouvez vous m'aider ?

Sub Copie()

Set ws = Worksheets("feuil1")

Dim count As Integer

Dim test As Integer

test = 0

count = 6

While test <> 1

If ws.Range("P" & CStr(count)) <> "" Then

count = count + 1

Else

ws.Range("P" & CStr(count)) = ws.Range(" A7 ")

ws.Range("Q" & CStr(count)) = ws.Range(" B6 ")

ws.Range("R" & CStr(count)) = ws.Range(" C4 ")

test = 1

End If

Wend

End Sub

bonsoir,

corrige la ligne surlignée.

mettre des parenthèses carrées indique que l'on veut faire référence à une cellule dont l'adresse se trouve entre les parenthèses carrées et test<>1 n'est pas vraiment une adresse de cellule.

C'est splendide ! Ca marche maintenant du feu de Dieu !

Merci beaucoup !!

content pour toi que tu puisses te réchauffer auprès de l'âtre divin !

Rechercher des sujets similaires à "creer tableau ligne macro"