Re : Création d'un formulaire... je suis nul
dpe_fr à dit:
Bonjour en ce bon matin !
Je suis nul, malgré tous les exemples tests sur le forum, je n'arrive pas à créer un formulaire pour remplir 2 cases seulement///...
Je vais essayer de joindre l 'exemple de ma feuille :
En fait je voudrais insérer avec le formulaire la date colonne B (ca commence a ligne 6) et Weight en colonne C (ligne 6 aussi... ) ca paraît bête mais le VBA, je trouve ca super compliqué!
Quelqu'un peut t il m aider la dessus et m expliquer brièvement le code utilisé ??
Merci beaucoup !
Bonne journée ensoleillée à tous et toutes
PS : j'ai lu le tuto pour attacher un fichier mais je n'y arrive pas quand même ... ou est le bouton pour l'attacher ??
Salut
Plus de fichier trasmis en direct, pour l'instant du moins.
voir ici
je suppose que c'est juste la transmission des données qui te pose problème.
Text_Box_Date = contrôle contenant la date
Text_Box_Weight = contrôle contenant le poids
Sub Valide_données()
Dim Lg_Cour as long
'recherche
Lg_Cour = Range("B65535").End(xlUp).row + 1
'dernière ligne de B en partant du bas qui est vide
if Lg_Cour < 6 then ' test n°ligne vide
' ligne vide inférieure à 6 donc, on commence à 6
cells(6,2)=Text_Box_Date
cells(6,3)=Text_Box_Weight
else
' ligne vide > 6 - on inscrit dans cette ligne
cells(lg_cour,2)=Text_Box_Date
cells(lg_cour,3)=Text_Box_Weight
end if
end sub
si tu ne sais pas faire un user form, tu peux faire un formulaire à partir d'une feuille et barre d'outils formulaire
pour valider utilise un bouton
Feuille Form_Saisie
Pour la date : cellule liée A1
Pour Weight : cellule liée A2
Pour bouton : macro liée Valide_Saisie
Données en feuille Données
Sub Valide_Saisie()
Dim Lg_Cour as long
'recherche ligne vide
Lg_Cour = sheets("Données").Range("B65535").End(xlUp).row + 1
'dernière ligne de B en partant du bas qui est vide
if Lg_Cour < 6 then ' test n°ligne vide
' ligne vide inférieure à 6 donc, on commence à 6
sheets("Données").Range("B6")=sheets("Form_Saisie").Range("A1")
sheets("Données").Range("C6")=sheets("Form_Saisie").Range("A2")
else
' ligne vide > 6 - on inscrit dans cette ligne
sheets("Données").Range("B" & lg_cour)=sheets("Form_Saisie").Range("A1")
sheets("Données").Cells(lg_cour,3)=sheets("Form_Saisie").Range("A2")
end if
end sub
ça devrait t'aider à résoudre ton problème
A+