Macro VBA

kabamba -  
ThauTheme Messages postés 1442 Date d'inscription   Statut Membre Dernière intervention   -
Bonjour,
Je suis nouveau en VBA, j'ai une feuille que j'ai nommée formulaire, une deuxième feuille j'ai nommée base, j'ai alors crée une macro qui copie les données de la feuille formulaire pour coller sur la feuille base, mais je n'arrive pas à faire la suite c'est à dire deuxième donnée pour coller sur la ligne suivante ainsi de suite.
Veuillez m'aider SVP


Configuration: Windows / Chrome 75.0.3770.142
A voir également:

2 réponses

ThauTheme Messages postés 1442 Date d'inscription   Statut Membre Dernière intervention   160
 
Bonjour Kabamba, bonjour le forum

Il te faut copier sur la première ligne vide de la base avec un code de ce type :
Dim OF as Worksheet 'déclare la variable OF (Onglet Formulaire)
Dim OB as Worksheet 'déclare la variable OB (Onglet Base)
Dim PLV As Integer 'déclare la variable PLV (Première Ligne Vide)

Set OF = Worksheets("Formulaire") 'définit l'onglet formulaire OF
set OB = Worksheets("Base")'définit l'onglet base OB
PLV = OB.Cells(Application.Rows.Count, "A").End(xlUp).Row + 1 'définit la première ligne vide PLV de la colonne A de l'onglet Base
'ensuite tes copier coller avec la syntaxe  Onglet_Source.Plage_Souce.Copy Onglet_Destination.Cellule_Destination :
OF.range("A2").Copy OB.Cells(LI, 1)
'etc...

0
kabambad Messages postés 1 Date d'inscription   Statut Membre Dernière intervention  
 
Merci pour la réponse que vous m'avez réservée, néanmoins il y a encore un petit soucis peut être par rapport à mon explication,
Dans l'onglet "Formulaire", je voudrais que la commande (macro) me copie la plage A7:H7 pour coller dans l'onglet "Base" à partir de la cellule A3, puis m'effacer les champs du formulaire afin de permettre une nouvelle saisie. Et la nouvelle saisie après validation doit venir se coller à partir de la cellule A4 ainsi de suite

Aidez moi SVP,

Sub dina()

Dim OF As Worksheet 'déclare la variable OF (Onglet Formulaire)
Dim OB As Worksheet 'déclare la variable OB (Onglet Base)
Dim PLV As Integer 'déclare la variable PLV (Première Ligne Vide

Set OF = Worksheets("Formulaire") 'définit l'onglet formulaire OF
Set OB = Worksheets("Base") 'définit l'onglet base OB
PLV = OB.Cells(Application.Rows.Count, "A3").End(xlUp).Row + 1 'définit la première ligne vide PLV de la colonne A de l'onglet Base
'ensuite tes copier coller avec la syntaxe Onglet_Source.Plage_Souce.Copy Onglet_Destination.Cellule_Destination :
OF.Range("A7:H7").Copy OB.Cells(LI, 1)

End Sub
0
ThauTheme Messages postés 1442 Date d'inscription   Statut Membre Dernière intervention   160
 
Essaie comme ça :
Sub dina()

Dim OF As Worksheet 'déclare la variable OF (Onglet Formulaire)
Dim OB As Worksheet 'déclare la variable OB (Onglet Base)
Dim PLV As Integer 'déclare la variable PLV (Première Ligne Vide

Set OF = Worksheets("Formulaire") 'définit l'onglet formulaire OF
Set OB = Worksheets("Base") 'définit l'onglet base OB
'définit la première ligne vide PLV de la colonne A de l'onglet Base
'(ligne 3 si A3 est vide, sinon la première ligne vide de la colonne A de l'onglet OB)
PLV = IIf(OB.Range("A3").Value = "", 3, OB.Cells(Application.Rows.Count, "A").End(xlUp).Row + 1)
OF.Range("A7:H7").Copy OB.Cells(LI, 1)
End Sub

0