Peut on demander à une textbox de mémoriser des valeurs ?

mhz

XLDnaute Junior
bonjour,

J'ai réalisé un formulaire vba excel. J'ai créé un textbox pour de rentrer des données (nom de structure) et je voudrais que le textbox se rappelle des données que je rentre quand je tape les 1ères lettres et pouvoir rentrer autant de données possibles.

Y a t il un moyen pour le faire ? J'ai aussi vu qu'on pouvait insérer des zones déroulantes modifiables, mais j'ai testé et ça n'a pas marché...

Quelqu'un aurait il une petite idée ?
Merci d'avance !!
 

mhz

XLDnaute Junior
Re : Peut on demander à une textbox de mémoriser des valeurs ?

Merci j'ai réadapté le code à mon userform sauf que maintenant il me dit qu'il y a un dépassement de capacité et ça bloque là :

iDrnLig = Sheets("BD").Range("A" & Rows.Count).End(xlUp).Row

qu'est ce que signifie iDrnLig ?
Par rapport au fichier liste que tu as modifié, dans mon userform c'est juste la combo5 "nom des structures" qui doit mémoriser le texte entré c'est p ê ça qu'il y a le message d'erreur...?

Enfin je m’emmêle les pinceaux et j'ai un bien moins bon niveau que vous....
:mad::mad:
 
Dernière édition:

Zdz16

XLDnaute Occasionnel
Re : Peut on demander à une textbox de mémoriser des valeurs ?

Bonjour mhz;

1 - iDrnLig : désigne la dernière ligne de la colonne désignée.
Remplace le type de cette variable en le mettant à Long comme suit
Dim iDrnLig as Long.

L'exemple 'Liste' utilise :
cmbStruc : Liste déroulante pour la structure
cmbDem : liste déroulante Demande
CmbDat : Liste déroulante pour la Date

L'exemple ne contient pas de combo5 ( je ne sais pas d'où sort ce contrôle)

Si tu veux uniquement mémoriser Structure, met en commentaire les paragraphes inutiles dans les routines

Ecoute, je ne serai pas disponible les 3 prochains jours, mais je te propose d'écrire clairement ce que tu veux réaliser. Créé un classeur avec quelques données comme exemple et pour qu'elles soient la base de la réalisation. Dépose le sur le Forum avec tes explication. Et je pense que les XLD'istes y compris moi t'aiderons.

Cordialement
 

mhz

XLDnaute Junior
Re : Peut on demander à une textbox de mémoriser des valeurs ?

Bonjour zdz16,
déjà merci pour le temps que tu consacres à m'aider.

En faite j'ai conçu un formulaire pour gérer les demandes d'aides au sein d'une structure.
Mon mon formulaire comporte plusieurs contrôles qui doivent me permettre d'avoir le nom des demandeurs (personnes qui demande une aide), le type de demande (matérielle, humaine, financière), l'état de la demande (en cour, validée, refusée), pour le matériel il y une case qui spéciale pour écrire ce qui est demandé, et quelques autres contrôles.

Pour avoir accès à mon formulaire j'ai créé un raccourci clavier (une macro) pour éviter de mettre un bouton sur une autre page qui sont utilisées.

Ce que je souhaiterais, c'est que le contrôle dans le lequel j'écris mémorise le texte (tapé) cet à dire le nom du demandeur pour que je n'ai pas son nom quand il me sollicite à nouveau pour une nouvelle aide. Soit c'est une combo et je cherche dans la liste déroulante, soit c'est un textbox et que j'ai des suggestions de noms quand je tape les 1eres lettres.

Par ailleurs, les éléments entrés apparaissent dans la colonne A de ma base de données excel.
Et dernière infos quand je parle du combobox5 je fais référence au combo qui doit mémoriser le texte dans mon userform.

Je vais faire un autre fichier plus simple pour que tu visualise!
 

Zdz16

XLDnaute Occasionnel
Re : Peut on demander à une textbox de mémoriser des valeurs ?

Bonjour mhz et le forum;

Plein de muguets pour tous.


Voici ce que j'ai compris de ton dernier poste. Je te laisse construire la mise à jour et la suppression des demandes.
Avant de faire une modification lit bien les commentaires et fait des tests. Dans touts les cas, je pense avoir répondu à la première question dans ton poste 1. Le reste c'est la faut du muguet qu'on m'a offert.

Cordialement et bon courage
 

Pièces jointes

  • Demande.xlsm
    34.5 KB · Affichages: 47
  • Demande.xlsm
    34.5 KB · Affichages: 50
  • Demande.xlsm
    34.5 KB · Affichages: 44

mhz

XLDnaute Junior
Re : Peut on demander à une textbox de mémoriser des valeurs ?

Il y a eu un bug car j'avais posté mon fichier...
le raccourci pour ouvrir le formulaire c'est CTRL+k.
 

Pièces jointes

  • Formulaire des aides.xlsm
    71.2 KB · Affichages: 28
  • Formulaire des aides.xlsm
    71.2 KB · Affichages: 40
  • Formulaire des aides.xlsm
    71.2 KB · Affichages: 36
Dernière édition:

mhz

XLDnaute Junior
Re : Peut on demander à une textbox de mémoriser des valeurs ?

J'ai apporté d'autres modifications mais je n'arrive pas à trouver l'erreur... j'ai toujours un message d'erreur qui apparait..

j'ai joins le document excel pour que ce soit plus facile.

Merci d'avance :)
 

Pièces jointes

  • Formulaire des aides.xlsm
    69.6 KB · Affichages: 34
  • Formulaire des aides.xlsm
    69.6 KB · Affichages: 42
  • Formulaire des aides.xlsm
    69.6 KB · Affichages: 40

mhz

XLDnaute Junior
Re : Peut on demander à une textbox de mémoriser des valeurs ?

Effectivement je viens de modifier ce petit problème.
Qu'est ce que sPrmCol à correspond cette variable car je ne comprend pas et à quoi je dois la faire correspondre pour ne plus avoir de problèmes ?
 

CHALET53

XLDnaute Barbatruc
Re : Peut on demander à une textbox de mémoriser des valeurs ?

Ce serait plutôt à toi qu'il faudrait demander cela : si tu as créé cette variable, tu devrais savoir à quoi elle sert
En début de toutes les procédures, tu as Option Explicit, ce qui implique que toutes les variables doivent être définies

a+
 

mhz

XLDnaute Junior
Re : Peut on demander à une textbox de mémoriser des valeurs ?

Bonjour Chalet53,

Zdz16 m'a aidé en créant un fichier demande.xlm qu'il a plus haut et j'ai essayé de le modifier pour l'adapter à ma commande de stage. J'ai donc du mal à tout comprendre dans son code c'est tout.

En fait je voudrais que ma ComboBox5 (nom structure/sportif) mémorise les infos que je rentre, à l'inverse des autres combo ou des informations sont proposées.
Je galère à faire cette manip car je suis pas du tout une pro du vba !!
J'espère que je suis claire dans mes explications :/
 

CHALET53

XLDnaute Barbatruc
Re : Peut on demander à une textbox de mémoriser des valeurs ?

Je me rends compte que tu essaies de traiter ton problème à partir de 2 discussions (c'est pas une bonne idée)
Aussi, je sors de celle-ci : tu as des pros qui essaient de résoudre ton problème sur l'autre fil

a+
 

Zdz16

XLDnaute Occasionnel
Re : Peut on demander à une textbox de mémoriser des valeurs ?

Bonjour mhz,

A tu lu mon commentaire dans le module

La propriété Tag de chaque ComboBox contient la colonne correspondante de la feuille ShePrm

Je ne pense pas que tu l'as compris, voici les explications:

Certains Controls possèdent une propriété TAG. Celle-ci peut être utilisée pour y stocker un paramètre, un commentaire, etc...
J'ai stocké dans cette propriété, donc dans la propriété TAG, le nom de la colonne correspondant au combobox utilisé pour y stocker les valeurs. Et du fait qu'on est un peut économe, j'ai utilisé une seule procédure pour mémoriser le contenu des ComboBox
et lors de l'appel, j'utilise sPrmCol que n'est d'autre que le contenu de la propriété TAG du comboBox.

Oui, ce n'est pas un bonne idée de traiter ton souci via deux discussions, je rejoints l'avis de Challet53.

A+
 

mhz

XLDnaute Junior
Re : Peut on demander à une textbox de mémoriser des valeurs ?

Bonjour,

Effectivement je l'avais pas compris. J'y connais rien en VBA du coup je suis un peu perdue.
Je vais fermer une des conversations sur vos conseils.
Si j'ai créer 2 conversations c'est que j'ai envie d'en terminer avec ce formulaire vba et je pensais que ça avancerais plus vite...
Merci beaucoup pour votre aide !
 

Herdet

Nous a quitté
Repose en paix
Re : Peut on demander à une textbox de mémoriser des valeurs ?

bonjour,
J'ai réalisé un formulaire vba excel. J'ai créé un textbox pour de rentrer des données (nom de structure) et je voudrais que le textbox se rappelle des données que je rentre quand je tape les 1ères lettres et pouvoir rentrer autant de données possibles.
Y a t il un moyen pour le faire ? J'ai aussi vu qu'on pouvait insérer des zones déroulantes modifiables, mais j'ai testé et ça n'a pas marché...

Quelqu'un aurait il une petite idée ?
Merci d'avance !!
Bonjour,
Pourquoi ne pas utiliser tout simplement une feuille de calcul ( éventuellement masquée) comme stockage des "Nom de structures" ou toutes autres données saisies dans la Userform1.
Actions :
1- Créer une feuille Données
2- Définir le tableau fixe : LST_Structures_Ens=Données!$A$3:$A$500
3- Définir le tableau variable : LST_Structures=DECALER(LST_Structures_Ens;;;NBVAL(LST_Structures_Ens))
4- Ajouter le module de fonctions très utiles "Fonctions_generales_VBA" ci-joint
on peut directement utiliser les Application.WorksheetFunction.Match(Val_Ch, Tableau, Mode_Rech)
et Application.WorksheetFunction.CountA(Tableau) mais c'est plus simple avec EQUIVAL et NBVALEUR

5- Ajouter la Sub Nom_Structure_Actualisation dans Userform1 qui exécute les actions suivantes :
- vérifier si le nom de structure sélectionné dans la ComboBox5 existe dans le tableau LST_Structures_Ens
- ajout à la fin de LST_Structures_Ens si nécessaire
- tri du tableau LST_Structures_Ens
- actualisation liste ComboBox5.RowSource = "LST_Structures"
6- Ajouter Nom_Structure_Actualisation dans les Sub UserForm_Initialize et CommandButton1_Click (bouton VALIDER)

On peut si nécessaire, effacer le tableau LST_Structures_Ens à la fermeture du programme

Code:
Sub Nom_Structure_Actualisation()
   ' cette sub Nom_Structure_Actualisation est à lancer :
   '   dans la Sub UserForm_Initialize
   '   dans la Sub CommandButton1_Click ( bouton VALIDER)
   ' Nota : EQUIVAL et NBVALEUR sont dans le module "Fonctions_generales_VBA"
   Dim LST_ens As Range, c As Variant
   
   c = ComboBox5.Value
   Set LST_ens = Range("LST_Structures_Ens")
   ComboBox5.RowSource = "LST_Structures"
   If c = "" Then Exit Sub
   '  ajout nouvelle saisie en fin de liste
   If EQUIVAL(c, LST_ens, 0) = 0 Then LST_ens(NBVALEUR(LST_ens) + 1) = c
   ' tri de la liste
   LST_ens.Sort Key1:=LST_ens(1)
   '  mise à jour liste
   ComboBox5.RowSource = "LST_Structures"
End Sub

Bon travail si cela peut t'aider
Robert

PS : il y a des pb d'objets inexistants TextBox2 et TextBox2 et de variables non définies : sACol,...
 

Discussions similaires

Statistiques des forums

Discussions
312 490
Messages
2 088 879
Membres
103 981
dernier inscrit
vinsalcatraz