Modifier la valeur d'une cellule avec une fonction si via une macro

Lilie_peche

XLDnaute Nouveau
Bonjour à tous,

J'ai parcouru le forum et n'ai malheureusement pas trouvé de réponse à mes questions alors j'ouvre une nouvelle discussion en espérant que quelqu'un pourra m'aider.

Voici le topo:
J'ai un fichier contenant un nombre fixe de colonnes et un nombre variable de lignes.
Mon fichier comporte des erreurs et j'aimerai faire une macro pour les corriger afin d'automatiser tout ça.

La colonne C contient des références et la colonne B contient des emplacements auxquels sont attribuées les références.
Un emplacement possède plusieurs références.

Je dois réaliser des conditions pour affecter les références en fonction des emplacements.

Concrètement, je dois faire dépendre ma colonne B de ma colonne C :
Si C1="valeur_a" alors B1="valeur_b"​
Si C2="valeur_c" alors B1="valeur_b"​
Si C3="valeur_d" alors B2="valeur_e"​

J'espère être claire :confused:

Quelqu'un peut me dire comment coder tout ça en VBA?

Merci pour votre aide.

PS : je suis débutante mais je peux me débrouiller en prog.
 

néné06

XLDnaute Accro
Re : Modifier la valeur d'une cellule avec une fonction si via une macro

Bonsoir Lilie_peche.

Je dois dire que j'ai du mal à comprendre la logique de l'affectation des résultats.
Plus de 39 visites et pas une réponses?
Je pense qu'une pièce jointe avec un tableau plus important s'impose pour mieux cerner le problème.

Cordialement
 

Lilie_peche

XLDnaute Nouveau
Re : Modifier la valeur d'une cellule avec une fonction si via une macro

Merci Néné!

Oui je n'ai pas été assez claire je pense

J'ai oublié de dire un point important et essentiel!

J'ai un fichier source qui donne l'affectation référence/emplacement :p (fichier_affectation en PJ)
C'est à partir de ce fichier source qu'on compare si l'affectation dans le fichier "fichier_a_modifier" est bonne ou s'il y a des erreurs.

S'il y a une erreur, par exemple dans le fichier_a_modifier : l'emplacement 03 n'existe pas mais les références qui lui sont affectées existent, alors il faut remplacer l'emplacement 03 dans la colonne A par 02.

Ma macro doit donc comparer l'affectation du fichier_à_modifier avec celle dans le fichier source fichier_affectation et s'il n'y a pas de correspondance, alors remplacer la cellule "emplacement" correspondante.

Est-ce plus clair :confused:

N'hésitez pas s'il faut que j'explique autre chose :)
 

Pièces jointes

  • liste_affectation.xlsx
    9.7 KB · Affichages: 124
  • fichier_a_modifier.xlsx
    8.5 KB · Affichages: 126

néné06

XLDnaute Accro
Re : Modifier la valeur d'une cellule avec une fonction si via une macro

Bonsoir Lilie_peche.

Je commence à peine à comprendre ce que tu recherches, mais sans un extrait de ton fichier (sans donnée confidentielle),je ne puis faire grand chose!
combien de colonnes?
Est il possible de n'utiliser qu'un fichier excel avec deux feuilles pour :fichier_affectation et liste_affectation ?


Cordialement
 

Lilie_peche

XLDnaute Nouveau
Re : Modifier la valeur d'une cellule avec une fonction si via une macro

Bonsoir néné!
Un extrait de mon fichier sera malheureusement impossible, confidentialité oblige.
La liste des affectations peut en effet être une feuille du fichier_à_modifier pour ne faire qu'un si c'est plus simple à coder.

Au total 14 colonnes. Nombres de lignes aléatoires : le fichier provient d'une extraction et donne la quantité d'un stock au temps t (5 extractions par jour). Je dirai entre 5000 et 10000 lignes.

Pour rejoindre les fichiers que j'ai mis en PJ dans le précédent msg, en réalité la colonne "emplacement" est la colonne B du fichier et la colonne "référence" est la colonne C. Idem pour la liste des affectations.
Le fichier à modifier est en feuille 1 et la liste on peut la mettre en feuille 2.

Je ne connais pas comment on code en VBA, si je dois créer des variables ou pas. J'aimerai faire qqch du style :
Si cellule C1 = ref1 alors cellule B1 = emplacement1
ou bien si cellule C1 = ref1 alors cellule B1 = contenu de la cellule B à côte de la cellule contenant ref1 dans la liste des affectations

LOL :) pourquoi coder n'est pas si évident ?? :D

ça t'aide?
 

néné06

XLDnaute Accro
Re : Modifier la valeur d'une cellule avec une fonction si via une macro

Bonsoir Lilie_peche.

Je pense que pour bien comprendre, il serait nécessaire d'avoir la feuille " Liste " avec tous les emplacements existants , les références et les titres des différentes colonnes de cette feuille.
Idem pour la feuille " Fichier ".

Regardes la PJ et renseignes-la, le mieux possible, en indiquant ce que tu désires obtenir.
Remplaces les données confidentielles par des données "bidons".
N'oublies pas de retourner l'exemple.

Je pense qu'après, les réponses "pleuvront".

A+
 

Pièces jointes

  • reference emplacement.xls
    25.5 KB · Affichages: 142

Discussions similaires

Statistiques des forums

Discussions
312 107
Messages
2 085 354
Membres
102 873
dernier inscrit
yayo