Ajouter ou supprimer des données d'une base de données en vba

  • Initiateur de la discussion Initiateur de la discussion sapheron
  • 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 !

sapheron

XLDnaute Junior
Bonjour,

Je souhaiterais créer un bouton qui permettra de modifier une base de données d'une liste de choix.

La méthode que j'utilise est celle ci

J'appelle un userbox qui demande quel base de données sélectionner.
Ensuite je détermine sa position dans mon classeur et la sélectionne et la défini comme nouvelle référence ( a la place d'utilisé la cellule "A1" qui est de base)
pour ce faire j'utilise le code vba suivant :

Code:
ActiveCell.CurrentRegion.Name = "Base_de_données"
ActiveSheet.ShowDataForm

Puis je redéfinis la base de donnée grace a la formule suivante :

Code:
Set Fin = Range("A65536").End(xlUp)
    ActiveWorkbook.Names.Add "Secteur", Range(Range("A2"), Fin) 'Definition du champs "Zone"
    ThisWorkbook.Sheets("Evaluation du risque").Select

J'aimerais d'abord savoir si une méthode plus simple existe? Et si oui c'est quoi?

Sinon si cette solution est bonne je suis bloqué en ce qui concerne la recherche de ma base de donné. J'espéré utilisé un méthode équivalente, en vba, aux fonctions recherche() et Index(). Mais je n'ai pas réussi a trouver :/ . Pouvez vous me montrer la voie qui mène au salut ?

Je vous joins mon fichier par la même occasion et je vous remercie
 

Pièces jointes

Re : Ajouter ou supprimer des données d'une base de données en vba

Bonjour,

Je crois que je n'ai pas compris grand chose.
Peux tu préciser ce que tu veux faire ?
Où est (sont) la (les) base(s) de données ?

Ci-dessous un bout de code modifié dans le module 1.
Code:
Sub Secteur()
ActiveWorkbook.Names.Add "Base_de_données", Sheets("liste des secteurs").Range("A1:A" & Sheets("liste des secteurs").Range("A60000").End(xlUp).Row).Address
Worksheets("liste des secteurs").Select
ActiveSheet.ShowDataForm 'Ajouter ou supprimer une zone dans la base de données
ActiveWorkbook.Names.Add "Zone", Sheets("liste des secteurs").Range("A1:A" & Sheets("liste des secteurs").Range("A60000").End(xlUp).Row).Address 'Definition du champs "Zone"
Sheets("Evaluation du risque").Select
End Sub

Qu'est ce que doit faire le UserForm ?
 
Re : Ajouter ou supprimer des données d'une base de données en vba

Bonjour Gareth,

Tout d'abord je tiens a te remercier de t'intéresser a mon cas.
Ensuite, j'avoue que c'est pas le sujet le plus clair que j'ai fait.
J'aimerais que dans mon fichier, faire varier les données présentes dans une liste déroulante, celle des postes de travail, par rapport a la données qui a été choisi dans une autre liste, celle des secteurs. Ces données correspondent aux postes de travail présents dans chaque secteur. Je ne sait pas encore faire cela mais un problème à la fois comme on dit, même si je pense avoir une idée.
Mais les données présentes dans ces bases de données ne sont pas statique, c'est a dire que je veux pouvoir rajouter ou supprimer des secteur ou des poste de travail.Mes base de données, c'est a dire mes secteur et mes postes de travail, se trouve dans l'onglet "liste des secteur" et dans l'onglet postes de travail. Et c'est dans cette partie que j'ai besoin d'éclairement.

Pour l'userform, c'est avant tout pour sélectionner le secteur dans lequel je veux procéder a un modification du poste de travail.
 
Re : Ajouter ou supprimer des données d'une base de données en vba

Bonjour,

Où sont ces fameuses Liste déroulantes ?
Ou bien, où doivent elles etre ?

Où sont les bases de données ?
Je ne vois qu'une base dans l'onglet Postes de travail ...
 
Dernière édition:
Re : Ajouter ou supprimer des données d'une base de données en vba

Bonjour,

Les liste déroulante devront se trouver dans les colonnes secteurs et poste de travail des feuilles "évaluation du risques" et "prévention du risque".
Les bases de données, ce qui correspond au données qui devront être présentes dans les listes déroulantes, se trouvent dans l'onglet "liste des secteur", pour la base de donnée qui contient mes secteurs, et dans l'onglet "postes de travail" pour celui qui contient mes postes de travail.
 
Re : Ajouter ou supprimer des données d'une base de données en vba

Pour le moment je n'ai pas encore constitué les bases de données. Mais dans poste de travail, il y aura sur la première ligne le secteur et toutes les lignes directement en dessous de lui, seront les postes de travail qui se trouvent dans ce secteur.
 
Re : Ajouter ou supprimer des données d'une base de données en vba

Merci sa marche nickel comme système par contre comment tu fait si jamais tu veux rajouter ou supprimer un poste de travail?
Peux tu également m'expliquer comment tu as fait? Car j'aimerais savoir le reproduire à l'avenir.

Je te remercie encore d'avoir pris du temps pour aider le débutant que je suis.
 
- 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

Discussions similaires

Réponses
10
Affichages
152
Retour