Bonjour
J'ai une base de donnée client sous excel
Je souhaiterai avoir une macro qui me permettrait de sortir une ligne de cette base, la modifier et la réintégrer ainsi modifiée
Merci de vos compétences et de votre coopération
Jacques
Bonjour
J'ai une base de donnée client sous excel
Je souhaiterai avoir une macro qui me permettrait de sortir une ligne de cette base, la modifier et la réintégrer ainsi modifiée
Merci de vos compétences et de votre coopération
Jacques
Bonjour,
qu'appelles-tu "la sortir" ?
Tu veux afficher chaque champs de la ligne, pouvoir modifier selon tes souhaits, et que les modifications soient intégrées à ta feuille de données ?
Où doivent s'afficher les informations cette ligne ? Userform ? Autre feuille ?
Un peu de description, et une copie des codes VBA entrepris, aideraient grandement à t'apporter rapidement une proposition.
En effet, ça manque d'informations là...
De base, je peux te dire que tu as besoin d'une colonne index (qui ne comporte donc aucun doublon). Ce qui te permettra de programmer une macro de recherche de valeur sur cette colonne de valeur index
Si je n'ai pas d'index, ce que je fais en générale, je crée une nouvelle colonne qui est la concaténation de 2 ou 3 colonnes. Pour cela, une simple formule ajoutée à la première colonne vide du tableau suffira.
Ensuite, tu devras créer une nouvelle feuille (ou un formulaire) dans lequel tu renseigneras la valeur à rechercher.
Tu ajoutes un bouton à cette feuille qui lancera une macro de recherche de la valeur à rechercher renseignée.
Le code devrait ressembler à quelque chose du genre :
dernière_ligne_donnee = feuil1.Cells.Find(what:="*", SearchDirection:=xlprevious).row
For i = 1 to dernière_ligne_donnee
If Feuil1.Cells(i,1) = valeur_a_rechercher Then
Modif 1
Modif 2
....
End If
Next i
Ma réponse est très sommaire mais ta demande aussi.
Bon courage![]()
Bonjour,
Ouh là!
Une fois la dernière ligne de recherche définie, la méthode "Find" suffit.
Les données peuvent alors alimenter un formulaire, être modifiées; et retournées vers la feuille de travail par l'activation d'un bouton de commande.
Non?
Pour ce faire, il suffirait que notre ami nous retourne un exemplaire de fichier en précisant le champ à rechercher et un projet de formulaire.
PROSPEC.xlsx
Re bonjour Voilà mon fichier actuel, désolé
Je souhaite donc sélectionner une société
Les données s'affichent dans le tableau de gauche
Si je souhaite modifier un ou plusieurs éléments de la fiche, ça sera dans le tableau de Droite
J'appuie sur le bouton MODIFICATION
Enregistrement des nouvelles données dans la base de donnée ( feuille BASE CLIENT)
J'espère avoir été assez clair, sinon, merci de me le dire
MERCI pour vos connaissances et votre coopération.
Salut,
Je ne vois pas à quoi sert ta feuille "RECHERCHE"
Il te suffit de
- Alimenter une zone de liste modifiable (Combobox) dans un formulaire (Userform)
- Activer un bouton de commande qui importe les données de ta feuille principale dans ce formulaire
- Modifier ces données dans ton formulaire (Textbox)
- Activer un 2ème bouton qui mette à jour ta feuille principale "BASE CLIENTS"
D'autre part, qu'entends-tu par "Société"?
Confirmes-tu qu'il s'agit des cellules de ta feuille figurant en colonne B (CLient)?
Dans ce cas, une difficulté consisterait dans la gestion des doublons.
D'après ce que je vois, une société (Client) peut avoir plusieurs contacts (exemple "PERENCO")
Au demeurant, on peut alors envisager 2 Combobox en cascade.
A plus
Oui Société est bien la colonne B
Je souhaite garder cette présentation car par après, il y aura d'autre feuille avec chaque fois un tri différent (choix du chef !!)
Userform ? Textbox ?
Les doublons seront traités ultérieurement probablement ici d'ailleurs (lol)
Merci pour ton aide
Oui, mais comment vas-tu gérer es sociétés qui ont plusieurs contacts.
Il te faut bien choisir le contact à modifier!
D'autre part, je ne vois pas en quoi le formulaire est un handicap. Au contraire!
Il suffira d'adapter le code.
De plus, les données anciennes et nouvelles peuvent très bien apparaître dans un formulaire.
Partager