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

Alimenter une Base de Données

  • Initiateur de la discussion Initiateur de la discussion carapaud.bleu
  • 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 !

C

carapaud.bleu

Guest
Bonjour,

Il y a quelques jours je connaissais juste le sigle VBA. Comme j'avais un peu de temps et que j'ai proposé de faire un module pour mon taf je m'y suis collé. J'ai trouvé beaucoup de réponse sur se forum mais aujourd'hui, je suis bloqué et je sature un peu. Le but c'est d'alimenter une base de données grâce à des listes déroulantes. Voici les problèmes que je rencontre :

- J'ai été obligé de créer un bouton pour mettre la date au bon endroit dans la base de données, mais quand on clic dessus il m'envoie sur la mauvaise feuille (Termes)

- J'ai également été contraint d'indiquer "fermer/Ouvrir" sur la commande "Valider" pour initialiser le module. Ça me paraît un peu limite ?

- Enfin, certains utilisateurs n'ont pas Excel sur leur poste. Est-il possible de créer une passerelle entre Excel et Calc ?

J'espère être clair car je vous le répète que suis néophyte en la matière. Aussi, même si vous n'avez pas de réponse, vos avis et vos conseils m'intéresse.

Merci à vous, Crapaud.Bleu
 

Pièces jointes

Re : Alimenter une Base de Données

bonjour carapaud.bleu,

Concernant le problème suivant,
... mais quand on clic dessus il m'envoie sur la mauvaise feuille (Termes)
La sélection de cette feuille se fait dans le code d'initialisation du UserForm (UserForm_Initialize()) avec les lignes de codes Sheets("Termes").Activate.
Ce code d'initialisation ne sert qu'à initialiser les ComboBox. Il y a une autre manière d'indiquer la source de données des ComboBox grâce à leur propriété RowSource.

Sur le classeur que je te renvoie, j'ai rajouté des Noms qui pointent vers les différentes listes de la feuille Termes. Ces noms sont accessibles dans le Gestionnaire de Noms.
Grace à la fonction DECALER, la zone vers laquelle pointe le nom est dynamique : elle s'ajuste automatiquement lors de l'ajout ou du retrait d'un élément.

Une fois les noms définis, il suffit d'aller renseigner la propriété RowSource des ComboBox.
...et supprimer le code d'initialisation qui est maintenant inutile.


Concernant ce problème,
- J'ai également été contraint d'indiquer "fermer/Ouvrir" sur la commande "Valider" pour initialiser le module. Ça me paraît un peu limite ?
Je ne comprends pas trop ce que tu veux dire.


- Enfin, certains utilisateurs n'ont pas Excel sur leur poste. Est-il possible de créer une passerelle entre Excel et Calc ?
Pour ce problème, il est envisageable de passer par un "format-pivot" accepté pas les deux logiciel, du genre .csv. Mais il y a sûrement d'autres solutions.


Sinon, juste pour savoir...
Pourquoi "s'embêter" à faire un UserForm pour la saisie ? Tu peux contraindre la saisie (à partir d'une liste de données) dans des cellules avec la Validation des cellules.
J'dis ça, j'dis rien...


a+
 

Pièces jointes

Re : Alimenter une Base de Données

Merci pour vos modifications, c'est ce que je voulais.

J'avoue ne pas tout comprendre à ton message mromain. Pour répondre à ta question, c'est un peu par curiosité que je procède avec un Userform. Peux-tu m'en dire un peu plus sur la validation des cellules.

Merci pour tes encouragements Bebere, je vais utiliser ce que tu as fait.

Crapaud.Bleu
 
Re : Alimenter une Base de Données


Voici un exemple.
La saisie dans la "base de donnée" est contrainte grâce aux validations.
Du coup, pas de macro 😉.

a+
 

Pièces jointes

Re : Alimenter une Base de Données

Hello tout le monde,

Bon ben vu que je me suis amusé à y faire et suivant ce que j'ai compris, voici mon tit bout de chose 😀

En plus, à mon sens, plus il y a de solutions proposées, mieux c'est !

Ca se raproche assez de Bebere tout de même.

Bonne journée à tous !
 

Pièces jointes

Re : Alimenter une Base de Données

Bonjour a tous,

en jetant un oeil aux diverses pièces jointes, c'est ce genre de chose dont j'ai besoin à la seule différence que les choix dépendent de ceux précedents. Je m'explique : dans la première case du userform, on a le choix entre "dudulle" et "popolle", je choisi popolle, donc le choix de la deuxième case concerne popole et pas dudulle.
C'est un peu la fonction indirect mais avec un userform. Et çà, je sais pas faire.

Pourriez-vous m'aider?

D'avance merci.
 
Re : Alimenter une Base de Données

bonjour MarcLebrun
dans termes,rempli les les colonnes avec ce qui correspond à étudiant,lycéen,etc
et alors nous pourrons t'aider
à bientôt
 

Pièces jointes

Re : Alimenter une Base de Données

Bonjour,


Ok, Bebere, l'odre des liste est au poil mais les champs du userform ne fonctionne pas. Je ne suis pas du tout calé dans VBA.
Tu pourrais m'aider?
 
Re : Alimenter une Base de Données

bonjour MarcLebrun
ok pour l'aide,explique ce que tu veux avec un exemple c'est encore mieux
je pense que la cascade devrait commencer par type tâche puis type travaux et pour finir
maintenance,etc
à bientôt
 
Re : Alimenter une Base de Données

Bonjour Bebere,

je suis d'accord avec l'ordre de la cascade, ce que je voudrais simplement c'est savoir comment faire apparaitre ces listes (combobox) dans le userform de la page : actuellement, le premier champs du userform est vide et je ne sais pas comment faire pour ajouter ou modifier une combobox pour qu'elle apparaisse dans ce champs.

A binetôt.
 
- 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

Réponses
5
Affichages
698
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…