Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

Userform à améliorer

  • Initiateur de la discussion Initiateur de la discussion brocbroc
  • Date de début Date de début

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

B

brocbroc

Guest
Bonjour à tous,
J’ai réussi à mettre en place une macro avec un userform (pas facile pour un novice) pour faire de la saisi. Ma macro me permet d’insérer une ligne supplémentaire à chaque saisie.
Elément important : j’ai une colonne date/heure (25/06/2006 00:00:00) près saisi sur un an et voir plus si nécessaire.
Je voudrai que mon userform puisse inclure une fonction automatique de recherche en langage VBA, cela me permettrais quand je saisi une date/heure dans celui ci qu’il puisse insérer les donnés sur la ligne de la date (près saisie) correspondent et non m’insérer une ligne supplémentaire (ici je n’ai pas besoin d’avoir des lignes supplémentaires car ce tableau aliment un TCD avec différentes formules et cela impacterais pas comme je le veux sur ce TCD, le nombre de lignes dont j’ai besoin est déjà près déterminé par ma colonne date/heure évoqué ci-dessus).
Pouvez vous m’aider à améliorer mon userform, merci beaucoup ?
 

Pièces jointes

Re : Userform à améliorer

Bonjour,

Je ne comprends pas très bien ta façon de procéder.

Elément important : j’ai une colonne date/heure (25/06/2006 00:00:00) près saisi sur un an et voir plus si nécessaire.

Je suppose qu'il s'agit de la liste située à droite de l'écran
Si c'est cela, elle risque d'être longue si tu veux tout prévoir sur un an.
N'est-il pas possible de rentrer la date et l'heure, indépendamment de cette liste, dans ton UserForm ?

A te relire
 
Re : Userform à améliorer

Bonjour Jacques,
tout est possible, donc diviser l'information en 2 pourquoi pas, mais je pense que tu as compris je désire pas créer de ligne siplémentaire mais juste complèter des lignes existantes., pour la quantité je peux pas réduir en dessous de 6 mois, merci de voir ce que tu peux faire, et si tu a d'autres questions n'ésite pas.
 
Re : Userform à améliorer

Merci de répondre à ma demande. C'est presque ça, mais au lieu de cliquer sur la liste de date j'aurai voulu juste pouvoir la saisir dans mon userform car c'est pas tres pratique (en réalité j'ai 13000 lignes donc autant de dates), si c'est trop compliquer il est possible de séparer la date et l'heure. Vois se que tu peux faire et merci encore.
 
Re : Userform à améliorer

Re,

Si j'ai choisi cette méthode c'est parcequ'il faut absolument que la saisie dans le textbox soit rigoureusement identique à la valeur de la cellule de ta liste.
Donc pour éviter les erreurs de frappe, les oublis de signes ou d'espaces je trouvais cette solution agréable.
Certes avec 13000 possibilités ça devient ingérable

Alors revenons à ta méthode en acceptant de taper dans le textBox1 la date, mais attention il faudra respecter rigoureusement la syntaxe.

Dans ce cas il faudra alors que tu supprimes dans la procédure évenementielle liée à Private Sub UserForm1_Activate, les lignes qui ajoutent la valeur de la date dans le textbox1.

Bon courage
 
Re : Userform à améliorer

Bonsoir Jacques 87,

Super ton code il marche à merveille.
Je vourdrais savoir comment je peux rajoutter des zones de saisies dan le userform (il y en à 9 il m'en faut 8 fois plus, soit au total mon tableau sera doté de 72 colones) sans qu'aucun message d'erreur n'apparaisse; ce que je peux comprendre puisqu'en voulant rajouter des zones de saisies ça impacte sur le scripte.
Je voudrais savoir ce qui doit être modifié dans le code pour que je puisse copier le feuil1 sur la feuil2 et que mes saisies ds le userform feuil2 n'apparaissent pas dans la feuil1, donc rendre indépendant les la feuil1 de la feuil2.
Je voudrai savoir si tous les élements (module, userform) de ce fichier peuvent être inséré dans un autre fichier qui contient lui assui des modules sans que ceux-ci n'entre en conflict.
Dernière question, peut tu m'explique en français ce que veux dire :
cette partie de code :
Private Sub CommandButton1_Click()
Dim I As Integer, col As String

With Worksheets("Feuil1")
For I = 11 To .Range("J65536").End(xlUp).Row
'MsgBox (.Cells(I, 10).Value)
If CStr(.Cells(I, 10)) = Me.TextBox1.Value Then
ligne = I
End If
Next I

Je pense que si tu me l'explique bien (les éléments que je dois modifier pour augmenter le nb de saisie ds le userform et )ça supprime l'intéret de ma première question.
Merci
 
Re : Userform à améliorer

bonjour,

Je réponds très vite à une partie de tes questions, car je dois partir

Dernière question, peut tu m'explique en français ce que veux dire :
cette partie de code :
Private Sub CommandButton1_Click()
Dim I As Integer, col As String

With Worksheets("Feuil1")
For I = 11 To .Range("J65536").End(xlUp).Row
boucle de la ligne 11 à la dernière
'MsgBox (.Cells(I, 10).Value) ' inutile
If CStr(.Cells(I, 10)) = Me.TextBox1.Value Then 'si le contenu de la cellule ligne I, colonne 10 = contenu du TextBox (Cstr sert à transformer le format date en format texte)
ligne = I ' repérage de la ligne trouvée pour pouvoir l'utiliser plus loin
End If
Next I


cette partie de code sert tout simplement à repérer le n° de la ligne contenant la cellule dont la valeur est identique à celle du TextBox

Pour les autres questions je m'en excuse mais je n'ai plus le temps

Bon courage

 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD
Assurez vous de marquer un message comme solution pour une meilleure transparence.

Discussions similaires

J
Réponses
7
Affichages
2 K
Julien1003
J
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…