Rechercher un minimum entre plusieurs cellules spécifiques
Mathilde
-
gbinforme Messages postés 14946 Date d'inscription Statut Contributeur Dernière intervention -
gbinforme Messages postés 14946 Date d'inscription Statut Contributeur Dernière intervention -
Bonjour,
J'ai un tableau de 500 lignes de quotation x 8 fournisseurs (en colonnes), j'aimerais trouver une formule qui m'identifie rapidement ligne par ligne quel est le minimum par type de tarif car chaque fournisseur a chiffré différemment selon la logistique.
Donc la réf A - un site de livraison - 8 prix par fournisseur
L'idée est de créer une boucle VBA qui cherche le min pour la ligne A1 parmi les prix DDP des fournisseurs (AB1; AX1; BZ1;...) pas la plage de cellule car elle comprend différents prix qui ne sont pas comparables. A cela s'ajoute la condition que certains fournisseurs n'ont pas tout coté donc certains prix sont à 0, je veux min différent de 0.
Une fois le prix minimum sorti, avec une fonction recherche identifier le nom du fournisseur
Est ce quelqu'un aurait déjà réalisé un bout de code VBA dans ce sens?
D'avance merci!
Mathilde
J'ai un tableau de 500 lignes de quotation x 8 fournisseurs (en colonnes), j'aimerais trouver une formule qui m'identifie rapidement ligne par ligne quel est le minimum par type de tarif car chaque fournisseur a chiffré différemment selon la logistique.
Donc la réf A - un site de livraison - 8 prix par fournisseur
L'idée est de créer une boucle VBA qui cherche le min pour la ligne A1 parmi les prix DDP des fournisseurs (AB1; AX1; BZ1;...) pas la plage de cellule car elle comprend différents prix qui ne sont pas comparables. A cela s'ajoute la condition que certains fournisseurs n'ont pas tout coté donc certains prix sont à 0, je veux min différent de 0.
Une fois le prix minimum sorti, avec une fonction recherche identifier le nom du fournisseur
Est ce quelqu'un aurait déjà réalisé un bout de code VBA dans ce sens?
D'avance merci!
Mathilde
A voir également:
- Rechercher un minimum entre plusieurs cellules spécifiques
- Formule excel pour additionner plusieurs cellules - Guide
- Rechercher ou entrer l'adresse - Guide
- Rechercher image - Guide
- Verrouiller cellules excel - Guide
- Rechercher remplacer word - Guide
4 réponses
Je te souhaite beaucoup de chance : tu en auras besoin !
Nous devrions nous débrouiller avec ces contraintes
" car chaque fournisseur a chiffré différemment selon la logistique "
" car elle comprend différents prix qui ne sont pas comparables "
" certains fournisseurs n'ont pas tout coté "
... et tout ça sans même voir le fichier ?
Nous devrions nous débrouiller avec ces contraintes
" car chaque fournisseur a chiffré différemment selon la logistique "
" car elle comprend différents prix qui ne sont pas comparables "
" certains fournisseurs n'ont pas tout coté "
... et tout ça sans même voir le fichier ?
bonjour
<code>Mettre le classeur sans données confidentielles en pièce jointe sur « mon-partage.fr »
et faire un" clic droit-coller le raccourci" dans votre message
Dans l’attente
<code>Mettre le classeur sans données confidentielles en pièce jointe sur « mon-partage.fr »
et faire un" clic droit-coller le raccourci" dans votre message
Dans l’attente
Bonjour merci pour votre réponse,
https://www.transfernow.net/files/?utm_source=413sd1s44u4d&utm_medium=&utm_content=en -- mon partage n'est pas accessible
Et voila,un peu d'explication vu que les valeurs ont été enlevé, la seule valeur unique est la colonne A pour chaque ligne, en suite de BE a EU ont a les offres fournisseurs (je conviens que la présence des cellules fusionnes n'est pas pratique).L'idée est de comparer les prix similiraires : BI, BU, CG etc,
donc j'avais pensé a une recherche V avec une MIN imbriqué qui prend en compte uniquement les valeurs supérieurs à 0.. mais je me suis dit qu'un code VBA serait peut etre plus fiable ...
Merci pour votre aide,
https://www.transfernow.net/files/?utm_source=413sd1s44u4d&utm_medium=&utm_content=en -- mon partage n'est pas accessible
Et voila,un peu d'explication vu que les valeurs ont été enlevé, la seule valeur unique est la colonne A pour chaque ligne, en suite de BE a EU ont a les offres fournisseurs (je conviens que la présence des cellules fusionnes n'est pas pratique).L'idée est de comparer les prix similiraires : BI, BU, CG etc,
donc j'avais pensé a une recherche V avec une MIN imbriqué qui prend en compte uniquement les valeurs supérieurs à 0.. mais je me suis dit qu'un code VBA serait peut etre plus fiable ...
Merci pour votre aide,
merci
1/C'est bien QUE les colonnes BI,BU,CG.... qui sont à comparer ?
2/Tu veux la valeur mini ou le nom du fournisseur du prix mini ?
3/ Toujours 8 fournisseurs ou nombre variable ?
1/C'est bien QUE les colonnes BI,BU,CG.... qui sont à comparer ?
2/Tu veux la valeur mini ou le nom du fournisseur du prix mini ?
3/ Toujours 8 fournisseurs ou nombre variable ?
En fait c'est les colonnes prix qui ont les mêmes noms donc les prix FCA et les prix DDP
L'idée est d'avoir la valeur min et le nom du fournisseur associé (mais comme j'ai mis le nom des fournisseurs en cellule fusionnée je suis pas sure que soit facilement fesable)
Toujours 8 fournisseurs sauf que certains non pas tout coté donc il y a parfois des valeurs vides ou égal à 0
L'idée est d'avoir la valeur min et le nom du fournisseur associé (mais comme j'ai mis le nom des fournisseurs en cellule fusionnée je suis pas sure que soit facilement fesable)
Toujours 8 fournisseurs sauf que certains non pas tout coté donc il y a parfois des valeurs vides ou égal à 0
Bonjour,
En fonction de ce que j'ai compris avec ton classeur vide (quelques montants auraient été bienvenus !) et avec tes explications, je te propose cette fonction personnalisée :
Tu la positionnes en bout de ligne (ou ailleurs si tu veux) avec
La fonction est à coller dans un module de ton classeur ou éventuellement dans le module de ton classeur PERSO.
En fonction de ce que j'ai compris avec ton classeur vide (quelques montants auraient été bienvenus !) et avec tes explications, je te propose cette fonction personnalisée :
' cette fonction recherche le minimum non nul d'un type de tarif choisi ' tpe = cellule indiquant le libellé du tarif concerné de la ligne Public Function prix_mini(tpe As Range) ' BI$2 par exemple Dim cel As Range, col As Long, lig As Long, mni As Currency, nom As String Application.Volatile lig = Application.Caller.Row: mni = 0 For Each cel In ActiveSheet.UsedRange.Rows(tpe.Row).Cells If cel = tpe Then If Cells(lig, cel.Column).Value <> 0 _ And (Cells(lig, cel.Column).Value < mni Or mni = 0) Then mni = Cells(lig, cel.Column).Value: col = cel.Column While Cells(1, col).Value = "" col = col - 1: nom = Cells(1, col).Value Wend End If End If Next cel prix_mini = IIf(mni, nom & " | " & mni, "Absent") End Function
Tu la positionnes en bout de ligne (ou ailleurs si tu veux) avec
=prix_mini(BI$2)par exemple et elle te fournit le nom et le prix minimum de la ligne pour ce type de prix ("FCA" en l'occurrence). Si tu veux un autre type de tarif il te suffit de mettre BL$2 ou autre, sur une autre colonne éventuellement.
La fonction est à coller dans un module de ton classeur ou éventuellement dans le module de ton classeur PERSO.