Demande de formules

gangura Messages postés 5 Date d'inscription dimanche 16 septembre 2007 Statut Membre Dernière intervention 23 janvier 2008 - 14 nov. 2007 à 07:55
delaux Messages postés 20 Date d'inscription lundi 5 novembre 2007 Statut Membre Dernière intervention 12 février 2008 - 14 nov. 2007 à 09:59
Bonjour,

J'ai besoin d'aide: quelle est la formule pour VBA EXCEL:

Je dois créer deux colonnes:

Colonne A: où il y a des références de produits

Colonne B: En fonction de certains produits, les valeurs de cette colonne B doivent

être à zéro

Quelle est la formule pour mettre les exceptions à zéro?

Merci pour vos réponses

1 réponse

delaux Messages postés 20 Date d'inscription lundi 5 novembre 2007 Statut Membre Dernière intervention 12 février 2008
14 nov. 2007 à 09:59
L'algo donne quelque chose comme ca :
Ligne=1
TANT QUE Cellule (Ligne, "A") <>"" FAIRE
   SI Cellule(Ligne, "A") = "Nom produit" ALORS
      Cellule(Ligne, "B") =0
   FSI
   Ligne= Ligne +1
FTQ
Le problème est que celà va te générer une condition par produit. Le plus simple est d'avoir sur une autre colonne la liste des produits spéciaux (Ici colonne C).

Ligne=1
TANT QUE Cellule (Ligne, "A") <>"" FAIRE
   LigneSpéciale =1
   TANT QUE Cellule(LigneSpeciale, "C") <>"" FAIRE
      SI Cellule(Ligne, "A") = Cellule(LigneSpeciale, "C") ALORS
         Cellule(Ligne, "B") =0
      FSI
      LigneSpéciale =LigneSpéciale +1
   FTQ
   Ligne= Ligne +1
FTQ

Le second algo donne ca en code VBA :
Ligne = 1
While ActiveSheet.Cells(Ligne, "A") <> ""
    LigneSpéciale = 1
    While ActiveSheet.Cells(LigneSpéciale, "C") <> ""
        If ActiveSheet.Cells(Ligne, "A") = ActiveSheet.Cells(LigneSpéciale, "C") Then
            ActiveSheet.Cells(Ligne, "B") = 0
        End If
        LigneSpéciale = LigneSpéciale + 1
    Wend
    Ligne = Ligne + 1
Wend

J'espère que celà va te permettre d'avancer
Bon courage
________________________
Thomas
N'oubliez pas Réponse Acceptée" ...
0
Rejoignez-nous