cs_lemlaurie
Messages postés3Date d'inscriptionvendredi 5 janvier 2007StatutMembreDernière intervention11 janvier 2007
-
10 janv. 2007 à 15:14
cs_lemlaurie
Messages postés3Date d'inscriptionvendredi 5 janvier 2007StatutMembreDernière intervention11 janvier 2007
-
11 janv. 2007 à 11:03
Bonjour,
Je me permet de m'adressez à vous car j'ai je rencontre quelques difficulté avec vba.
contexte:
j'ai une base de donnée avec des produits
pour chaque produit j'ai trois fournisseur (mais en tout plus de quarante puisque je peux avoir auchan, boulanger carrefour pour les stylos verts et penny, lidl, lerouymerlin pour les stylos rouge)
mission:
je dois trier les fournisseurs : en premier le moins cher puis le deuxieme moins chers puis le plus cher ça c'est ok : certainement qu'il y a moins moche et moins longt mais bon ça marche
je dois attribuer une couleur à chaque fournisseur la c'est la cata ya pas moyen j'y arrive pas
> il me prend que trois mise en forme conditionnelle donc pas assez.
et de toute façon avec les MC ils me faudrait retaper le nom de chaque fournisseur ce que j'ai pas du tout envie de faire et je suis sur qu'il y a moyen autrement.
Alors j'ai tenter les tableaux mais comment prendre les nom sur les trois colonnes? (qui ne sont pas l'une a coté de l'autre puisqu'il y a les prix etc...) (j'y suis arrivée pour une colonne et sans doublons s'il vous plait )
et comment lui dire d'atribuer une couleur à chaque nom et de renvoyer cette couleur dans la "bdd"
Merci d'avance à vous tous tout le monde qui voudrez bien m'aider
cs_lemlaurie
Messages postés3Date d'inscriptionvendredi 5 janvier 2007StatutMembreDernière intervention11 janvier 2007 10 janv. 2007 à 16:01
Arg l'horreur
je vien de tester la macro dont j'était si contente ( pour trier les fournisseurs du moins chers au plus cher) sur une copie de la vrai bases de données etça fait 10 min que ca tourne ( en même je fais un traitement ligne par ligne et il y à environ 11mille ligne...)
d'ailleur j'y pense, je n'ai pas mis de lien vers mon classeur pour ne pas encombrer le forum mais si qqn est partant pour m'aider je peux lui envoyer le fichier ( la fausse bdd avec 12 ligne au lieu de 11mille)
cs_caramelmou
Messages postés56Date d'inscriptionjeudi 25 décembre 2003StatutMembreDernière intervention23 avril 20083 10 janv. 2007 à 19:05
Tu parles de classeur ( ? Excel ) et de base de données... de renvoyer une couleur dans la "bdd"
Pourrais tu être plus explicite sur les formats de documents utilisés ?
cs_MPi
Messages postés3877Date d'inscriptionmardi 19 mars 2002StatutMembreDernière intervention17 août 201823 10 janv. 2007 à 23:34
Pour le tri, tu ne peux pas utiliser la fonction de tri d'Excel ?
Elle te donne la possibilité de 3 champs comme critère (Fournisseur, produit, prix)
Si tu as besoin de plus de champs pour le tri, tu pourrais concaténer certains de ces champs dans une colonne supplémentaire. Tu inclus alors cette colonne dans le tri au degré d'importance nécessaire.
Pour la couleur, je pense que le mieux est de passer par un macro que tu peux activer dans Worksheet_Change de ta feuille
Private Sub Worksheet_Change(ByVal Target As Range)
' Si on écrit ailleurs que dans la 1ere colonne, la macro ne se fait pas
If Target.Column <> 1 Then Exit Sub
' LCase pour forcer la comparaison de minuscules
' Il faut donc que tu entres le noms entre guillemets en minuscules
Select Case LCase(Target.Text)
Case "auchan"
Target.Interior.ColorIndex = 3
Case "boulanger"
Target.Interior.ColorIndex = 4
'...............
End Select
End Sub
Donc, si tu écris Auchan ou AuChAn dans une cellule de la colonne A, la couleur de cette cellule changera pour Rouge (ColorIndex 3)
cs_lemlaurie
Messages postés3Date d'inscriptionvendredi 5 janvier 2007StatutMembreDernière intervention11 janvier 2007 11 janv. 2007 à 11:03
je travaille sur excel XP
ma bdd est sur une feuille excel
et il faut que tout soit automatiser
n'hesiter pas me demander le classeur
je vous l'enverrai ainsi que les macro que j'ai déjà crée
je dois trier les fournisseur du moins cher au plus cher sans changer de feuille et sans les séparer de leur information respective (ne pas separer la plage q-z par exemple)
en sachant que pour l'instant ya trois "zone" de fournisseur mais qu'il y en aurra surment 5 d'ici peu donc le code ne doit pas être en dur ( ce que je ne sais pas faire)
en sachant aussi que parfois on a un fournisseur obligatoire par exemple carrefour a qui on doit forcement faire apelle même si c'est pas le moins cher. par conséquent carrefour devrait toujours être en premiere place.
et pour un effet visuel il faut que chaque cellule avec un nom d'un fournisseur ai sa propre couleure (dans BDD_general)
voila j'ai un peu avancé
je continue évidement à essayer d'avancer et je vous remercie