VBA - copier/coller avec conditions

Bonjour FFO,

La copie du fichier A vers le fichier B fonctionne parfaitement. Il n’y a aucun décalage entre les cellules.
Malheureusement, les données renseignées dans la colonne B du fichier B “ID U” s’effacent toujours quand je lance la macro afin d’ajouter des nouvelles entrées.

Peux-tu m’aider à comprendre pourquoi ?

Bonjour
C’est le comportement normal que tu as exprimé à savoir la mise à jour d’articles existant en rapport avec les mêmes données colonne A et Colonne D si entre le fichier source et le fichier cible je retrouves l’équivalent il faut mettre à jour l’ensemble des données de la colonne A à la colonne N à l’image de celles du fichier source
Donc un même article en fichier source verra systématiquement toutes ses autres données actualisées à l’image de ce fichier et notamment celle de la colonne B qui prendra la valeur du fichier source de cette colonne pour cette article
En l’occurrence sur le fichier A fourni Fichier A.xlsx tous les articles n’ont aucune données en colonne B donc l’outil mets à l’identique dans le fichier B Fichier B.xlsx colonne B
Il faut impérativement que pour des articles identiques les données que tu souhaites avoir en fichier cible soient présentes en fichier source
C’était ton souhait au niveau actualisation ou je n’ai rien compris
A toi de me dire et d’être précis

Ahhh d’accord je comprends mieux mon erreur. Je n’ai pas été assez précis dans ce cas vraiment désolé.
Je souhaiterais avoir la main sur la colonne B,H et M du fichier B justement.
Une fois la copie du fichier A vers fichier B, je dois renseigner un code unique dans la colonne B et d’autres informations dans les colonnes H et M en fonction de différents critères. Ces informations ne doivent pas disparaître lors du lancement de la macro pour ajouter les nouvelles entrées.
Quand je parlais des colonnes A et D, c’étais afin d’éviter les cas de doublon lors du lancement de la marco. En gros “si tu reconnais la colone A et D, il ne faut pas recopier la ligne malgré les info que j’ai renseignées en colone B, H ou M”.

J’espère être le plus précis possible cette fois.

Encore une fois un grand merci pour ton aide et ta réactivité

Comment distinguer les données que tu viens d’alimenter pour ne pas les réactualiser de celles qui doivent l’être ?
Pourquoi ne pas actualiser dans le fichier source et laisser la macro pour le fichier cible ?

Sinon il est possible de mettre une couleur en colonne A du fichier cible pour les lignes qui ne doivent pas être mise à jour par la macro

A toi de me dire mais pour l’actualisation ou non il me faut un indicateur la macro toute seule ne pourra pas faire le choix judicieux sans indication

Merci de me dire la logique en l’espèce à prendre en compte

Il faut imaginer deux équipes qui gèrent ces tableaux. Chaque équipe doit avoir son propre tableau c’est un impératif malheureusement.
L’équipe 1, en charge du tableau A, qui doit renseigner les colonnes A/C/D/E/F/G/I/J/K/L.
L’équipe 2, en charge du tableau B, qui s’occupe des colonnes B/H/M.
Une fois les données renseignées par l’équipe 1, les information doivent être transmissent à l’équipe 2 c’est à dire du fichier A vers le fichier B;
A la réception des données, l’équipe 2 doit pouvoir travailler sur les colonnes B/H/M du fichier B.
Je pensais prendre en compte les colonne A ET D pour dire à la macro de ne pas copier si ces informations sont deja dans le fichier cible B. En évitant cette copier, je pensais que ça empêcherait que les données renseignées par l’équipe 2 soit effacées automatiquement par la marco lors de l’actualisation des données.

Ton idées de mettre une couleur en colonne A du fichier cible pour empêcher la mise à jour des lignes par la macro est excellente. Dans ce cas j’opterais pour un gris très clair. J’aurais juste à mettre en couleur les nouvelles entrées lors de l’actualisation et je pourrais travailler sur les autres lignes sans la crainte que la macro efface tout.
Je pense que ça serait la meilleur option pour répondre à ma problématique :grinning::grinning::grinning:

Donc en résumé concernant l’actualisation si l’article présent données colonne A et D identiques 2 solutions :
Cellule colonne A rouge aucune actualisation de l’article sur toute la ligne
Cellule colonne A incolore actualisation de l’article sur toute la ligne

Merci de confirmer

Attention au choix de la couleur car plusieurs rouges sont possibles
Si je mets en dur dans le code une couleur rouge qui n’est pas celle utilisée le fonctionnement ne sera pas celui attendu
Pour être certain de prendre la même couleur on peux choisir une cellule dans l’onglet Fichier B.xlsx qui la détiendrait
Le code viendrait la récupérer et se baserait dessus pour agir correctement
Seul impératif bien veiller à ce que cette cellule témoin soit dotée de la couleur d’exclusion
L’avantage est que cette couleur est à ta main donc modifiable l’essentiel étant qu’elle soit en accord avec celle des cellules qui marque l’exclusions d’actualisation
Dans cette alternative merci de me donner la cellule témoin

Sinon il faut être en accord parfait sur la couleur d’exclusion

Merci de me dire

Ta règle est parfaite dans ce sens.
Toutefois, est il possible de choisir une autre couleur que le rouge pour empêcher l’actualisation de la ligne ? Si oui, il serait plus intéressant pour moi de choisir le blanc arrière plan 1, plus sombre 5%.
Si ça n’est pas possible, le rouge fera l’affaire.
Je te joint un fichier avec la couleur que je souhaiterais appliquée.
couleur.xlsx (1,5 Mo)

Concernant la cellule dans l’onglet Fichier B.xlsx qui détiendrait la couleur, si cette cellule peut être hors du tableau, la cellule Q1 serait idéal. Dans le cas contraire la cellule A2 fera l’affaire.

Tu trouveras sur ce lien l’outil adapté des dernières dispositions convenues
L’actualisation d’un article existant ne se réalisera que si la couleur de sa cellule colonne A est différente de celle de la cellule Q1
Pour éviter que des utilisateurs se posent la question concernant la couleur de la cellule Q1 tu peux mettre en information à l’intérieur « Couleur exclusion »
Tu peux même mettre plus amples explications ce qui est important pour un bon fonctionnement de la procédure c’est simplement sa couleur qui doit être celle utilisée en colonne A pour les articles à ne pas actualiser peu importe la donnée qu’elle possède

Fais des essais et dis moi

Bonjour FFO,
merci infiniment pour ton aide, le fichier fonctionne parfaitement :grin::grin::grin:

Ce sujet a été automatiquement fermé après 30 jours. Aucune réponse n’est permise dorénavant.