Précédent   Forum des professionnels en informatique > Logiciels > Microsoft Office > Excel > Macros et VBA Excel
Macros et VBA Excel Vos questions relatives aux macros Excel, à l'utilisation de VBA et à l'automatisation de vos classeurs Excel.
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 10/11/2011, 18h22   #1
 
Homme
Inscription : novembre 2011
Messages : 1
Détails du profil
Informations personnelles :
Sexe : Homme
Localisation : France, Gers (Midi Pyrénées)

Informations forums :
Inscription : novembre 2011
Messages : 1
Points : -2
Points : -2
Par défaut Comment faire un comparateur de prix ?

Bonjour,
Je recherche de l’aide pour faire un comparateur de prix entre différents fournisseurs, le fichier excel contient environ 100 000 références .
Ce fichier je veux pouvoir comparer les produits toutes les semaines, dès que je reçois les nouveautés, les réassorts, les ruptures de stocks…etc de mes différents fournisseurs.
Mon besoin :

1. Mon besoin c’est de mettre déjà tous les produits au même format ( police, gras , texte dans la cellule barcode et rajouter 0 pour obtenir 13 chiffres dans la cellule….etc ), le fichier ci-joint est au format voulu .
2. Mettre dans la colonne L le prix en Euros .
3. Le but est de comparer les colonnes C-D-E-F dès qu’il a au moins de cellules identiques la comparaison peut se faire x le nombre de ligne .
4. Mettre dans la colonne M, le résultat de la comparaison . Il faudra mettre dans la colonne M , pour le moins cher = 1 et en suivant 2 , 3 ....etc suivant le nombre de ligne comparée.

Voilà en espérant avoir été assez clair , mais n'hésitez pas à me contacter le cas contraire .

Merci pour votre aide .
Philippe
Fichiers attachés
Type de fichier : xls Modèle comparateur - Copie.xls (30,5 Ko, 8 affichages)
fragglerock est déconnecté   Envoyer un message privé Réponse avec citation 02
Vieux 11/11/2011, 10h46   #2
Membre Expert
 
Inscription : août 2006
Messages : 1 435
Détails du profil
Informations forums :
Inscription : août 2006
Messages : 1 435
Points : 1 753
Points : 1 753
Bonjour,
Je le verrai par une macro mais il y a peut-être mieux
Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
 
Sub Resultat()
 Dim c As Object, ligne As Long, code As String, prix As Long
 
 ActiveWorkbook.Worksheets("Feuil1").Sort.SortFields.Clear
 ActiveWorkbook.Worksheets("Feuil1").Sort.SortFields.Add Key:=Range("F:F") _
        , SortOn:=xlSortOnValues, Order:=xlAscending, DataOption:=xlSortTextAsNumbers
 ActiveWorkbook.Worksheets("Feuil1").Sort.SortFields.Add Key:=Range("L:L") _
        , SortOn:=xlSortOnValues, Order:=xlAscending, DataOption:=xlSortNormal
 With ActiveWorkbook.Worksheets("Feuil1").Sort
        .SetRange Range("A:M")
        .Header = xlYes
        .MatchCase = False
        .Orientation = xlTopToBottom
        .SortMethod = xlPinYin
        .Apply
  End With
 
  With ActiveWorkbook.Worksheets("Feuil1")
   ligne = 2: n = 1
   code = .Cells(ligne, 3) & .Cells(ligne, 4) & .Cells(ligne, 5) & .Cells(ligne, 6)
   Do Until .Cells(ligne, 5) = ""
     If code = .Cells(ligne, 3) & .Cells(ligne, 4) & .Cells(ligne, 5) & .Cells(ligne, 6) Then
       .Cells(ligne, 13) = n
     Else
       code = .Cells(ligne, 3) & .Cells(ligne, 4) & .Cells(ligne, 5) & .Cells(ligne, 6)
       n = 1
       .Cells(ligne, 13) = n
     End If
     n = n + 1
     ligne = ligne + 1
   Loop
  End With
End Sub
helas est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 06h39.


 
 
 
 
Partenaires

Hébergement Web