Formulaire VBA.

Fermé
VBA discovery - 21 mai 2011 à 11:47
ed555 Messages postés 61 Date d'inscription vendredi 20 mai 2011 Statut Membre Dernière intervention 26 octobre 2018 - 21 mai 2011 à 16:30
Bonjour,
Je suis en train de créer un formulaire en VBA. Quelque chose de très simple... pour celui qui s'y connait!
Un Userform indiquera aux utilisateurs les valeurs qui après enregistrement se retrouveront dans un tableau XL.
Je suis confronté à des problèmes de débutant:

J'affecte la valeur d'une zone de texte à une cellule: [A1] = UserForm1.TextBox1 et ainsi de suite pour la ligne..

Seulement lorsque je ferme ma userform et que je l'ouvre à nouveau les nouvelles valeurs écrasent les dernières saisies. Or je voudrais les mettre à la suite (rajouter une ligne)

Comment fait-on pour rajouter une ligne à mon tableau à l'ouverture de la userform?

Une autre question: peut-on faire des listes déroulantes non modifiables?

Une dernière: Avec une macro peut créer un texte et l'envoyé automatiquement à 3 adresses e-mail simultanément? Vous avez un exemple?

Merci d'avance.

1 réponse

ed555 Messages postés 61 Date d'inscription vendredi 20 mai 2011 Statut Membre Dernière intervention 26 octobre 2018
21 mai 2011 à 16:30
salut,

pour ce qui est de rajouter une ligne, c'est simple :

'tu te mets en A1
Sheets(1).Range("A1").Select

'tu cherches la prochaine case vide
Do While Not (IsEmpty(ActiveCell))
Selection.Offset(1, 0).Select
Loop

'tu stockes le n° de la ligne dans une variable
ligne = ActiveCell.Row


et après tu peux écrire dans la ligne voulue par exemple :
Sheets(1).Range("A" & ligne) = UserForm1.TextBox1.Value


pour empêcher la modification des listes déroulantes, ça se trouve dans les propriétés de la liste en question. il faut afficher les propriétés et choisir de ne pas pouvoir les modifier (j'ai oublié quelle action doit être "Enabled=False" mais tu trouveras sûrement)

pour les mails je ne sais pas faire !
0