Mise a jours de données

Bonjour a tous,

Excel me donne du fil a retorde on dirait

Voici la liste a mettre a jours. Les colonnes pièces, valeur et Achat valeur total

doivent être mis a jours en cliquant sur un bouton a partir d'une autre table de donnée.

En gros, les chiffres des colonnes en bleu (feuille 2) doivent être copié dans le tableau initiale (feuille 1).

Facile a faire dans un premier temps en utilisant une simple macro "copié/coller". Ça reste cependant une solution temporaire.

Le hic, c'est que si il y'a une ligne qui est rajouté dans la table des données (feuille 2) décalera toutes les données de mise a jours dans la feuille 1.

Le tableau des MAJ sera donc faussé

Comment faire pour que Excel puisse "comprendre" qu'il doit aller chercher les chiffres de la ligne "BB" dans la table des données (feuille 2), et les remettre dans la ligne BB dans la table des MAJ (feuille 1)?

Je sais pas si j'ai été claire, mais si vous voulez plus d'explication, n'hésitez surtout pas!

Un grand merci d'avance

11testify.xlsx (14.94 Ko)

Bonsoir

A voir si c'est que tu recherches

12testtify-v001.xlsx (21.37 Ko)

re

un grand merci pour ce premier jet

C'est pas exactement ce que je cherche.

je pensais être plus claire en virant la moitié des données inutile mais en fait non, j'en suis désolé.

Voici le fichier complet. En rouge, les données a mettre a jours via la feuille "DATA"

dans la feuille DATA, on HFA qui correspond a toutes les données pour FA.

HHA qui correspond a toute les donnée a mettre a jours pour HA

etc...

Le but reste le même: éviter que, lorsque je reçois les donnée brute pour FA,HA,etc, que tout soit a jours meme si il y a un décalage dans les donnée brute.

Encore merci pour votre aide vraiment utile.

PS: c'est normal si vous n'obtenez pas les même résultat avec les données A,B,R,P

9classeur2.xlsx (85.88 Ko)

Bonjour

A voir ....

15testtify-v002.xlsm (95.03 Ko)

Vraiment un grand merci!

Ca marche tout simplement parfaitement.

Si je rajoute des références dans ma table des données, et que je la rajoute dans mon tableau de départ, la macro le prend en compte et fait tout seul les modifications.

MERCI mille fois!

bien que nous sommes quand meme la pour apprendre, un petit mot d'explication sur le code? TRES rapide, ca m'aidera a mieux comprendre la démarche. Et profiter de l'occasion pour me mettre au VBA.

Sub Mise_A_Jour()
Dim Sh As Worksheet
'Dim LgDer As Long
Dim Cel As Range
Dim I As Long

  With Sheets("DATA")
    For I = 2 To .Range("A65536").End(xlUp).Row
      If Left(.Cells(I, "A"), 1) = "H" Then
       Set Sh = Sheets(Mid(.Cells(I, "A").Value, 2, 50))
      Else
        Set Cel = Sh.Range("A7:A28").Find(what:=.Cells(I, "A"), LookIn:=xlValues, lookat:=xlWhole)
        If Not Cel Is Nothing Then
          Cel.Offset(0, 10) = .Cells(I, "B")          ' Colonne K
          Cel.Offset(0, 11) = .Cells(I, "C")          ' Colonne L
          Cel.Offset(0, 20) = .Cells(I, "E")          ' Colonne U
        Else
          MsgBox "Référence inconnue : " & .Cells(I, "A")
        End If
      End If
    Next I
  End With
End Sub

Bonjour

Quelques éléments

Rechercher des sujets similaires à "mise jours donnees"