S
Stéph tjs en vie
Guest
Bonjour à tous,
J'essaye de monter une macro pour optimiser une base de données qui jusque là était trop trop bruillon !
Je vous explique vite fait , j'ai un classeur repértoriant une liste de clients (classeur 1)avec 3 colonnes :
colonne A liste Clients
colonne B pays du client
colonne C domaine d'activités du client
J'ai un second classeur qui repertorie les nouvelles transactions que les clients ont faits.
1er Pb :
J'ai developpé une macro avec un userform qui me permet d'ajouter ces nouvelles transactions en choisissant
successivement le nom du client, le pays et le domaine d'activités.Le pb est le suivant :
- soit le client existe déjà car présent dans mon classeur 1 précédent Listeclients.xls - là c'est génial, pas de pb
- soit il n'existe pas, et là je remplis mon userform moi meme en tapant en brute son nom et en choisissant dans une liste son pays et son type d'activités puis en meme temps je demande à ma macro de l'ajouter à ma Listeclients (classeur 1) aussi bien son nom, k son pays et son type d'activités soit les 3 colonnes. c'est une sorte de mIse à jour de ma base.
Là est le pb, pour le moment, je n'arrive pas à lui faire ajouter et dans le meme ordre nom/pays/domaine, j'ai un code pour ajouter le nom mais le classeur n'est pas reconnu ..!
If Me.Listeclients.ListIndex = -1 Then _
Workbooks('ListeInvestisseurs.xls').Sheets('Feuil1').Cells(1, 1).End(xlDown).Offset(1, 0).Value = Me.ListeInvestisseurs.Value
Comment arriver à lui faire comprendre cette mise à jour ?
2eme pb :
Ma list box est alimentée par une liste déroulante dont la source est le classeur 1 Listclients.xls, le pb c'est que jusqu'ici ce classeur doit absoluement etre ouvert,sinon ma macro ne fonctionne pas!
Voici mon code actuel pour importer le fichier liste clients
Dim i As Integer
For i = 1 To Workbooks('Listeclients.xls').Sheets('Feuil1').Range('A1').End(xlDown).Row
ListeClients.AddItem Workbooks('ListeClients.xls').Sheets('Feuil1').Cells(i, 1)
Next i
Auriez vous une solution pour qu'elle fonctionne également lorsque le classeur est fermé ?
J'ai fait une ptite recherche dans les archives, mais je n'ai rien trouvé qui concernait une listbox liste déroulante alimentée par un classeur fermé ..
Quelqu'un a t il une idée ?
Merci pour votre aide le forum ..
Steph, tjs en vie meme apres tous ces codes codés!
J'essaye de monter une macro pour optimiser une base de données qui jusque là était trop trop bruillon !
Je vous explique vite fait , j'ai un classeur repértoriant une liste de clients (classeur 1)avec 3 colonnes :
colonne A liste Clients
colonne B pays du client
colonne C domaine d'activités du client
J'ai un second classeur qui repertorie les nouvelles transactions que les clients ont faits.
1er Pb :
J'ai developpé une macro avec un userform qui me permet d'ajouter ces nouvelles transactions en choisissant
successivement le nom du client, le pays et le domaine d'activités.Le pb est le suivant :
- soit le client existe déjà car présent dans mon classeur 1 précédent Listeclients.xls - là c'est génial, pas de pb
- soit il n'existe pas, et là je remplis mon userform moi meme en tapant en brute son nom et en choisissant dans une liste son pays et son type d'activités puis en meme temps je demande à ma macro de l'ajouter à ma Listeclients (classeur 1) aussi bien son nom, k son pays et son type d'activités soit les 3 colonnes. c'est une sorte de mIse à jour de ma base.
Là est le pb, pour le moment, je n'arrive pas à lui faire ajouter et dans le meme ordre nom/pays/domaine, j'ai un code pour ajouter le nom mais le classeur n'est pas reconnu ..!
If Me.Listeclients.ListIndex = -1 Then _
Workbooks('ListeInvestisseurs.xls').Sheets('Feuil1').Cells(1, 1).End(xlDown).Offset(1, 0).Value = Me.ListeInvestisseurs.Value
Comment arriver à lui faire comprendre cette mise à jour ?
2eme pb :
Ma list box est alimentée par une liste déroulante dont la source est le classeur 1 Listclients.xls, le pb c'est que jusqu'ici ce classeur doit absoluement etre ouvert,sinon ma macro ne fonctionne pas!
Voici mon code actuel pour importer le fichier liste clients
Dim i As Integer
For i = 1 To Workbooks('Listeclients.xls').Sheets('Feuil1').Range('A1').End(xlDown).Row
ListeClients.AddItem Workbooks('ListeClients.xls').Sheets('Feuil1').Cells(i, 1)
Next i
Auriez vous une solution pour qu'elle fonctionne également lorsque le classeur est fermé ?
J'ai fait une ptite recherche dans les archives, mais je n'ai rien trouvé qui concernait une listbox liste déroulante alimentée par un classeur fermé ..
Quelqu'un a t il une idée ?
Merci pour votre aide le forum ..
Steph, tjs en vie meme apres tous ces codes codés!