XL 2016 copier coller en fonction de la date

gothc

XLDnaute Occasionnel
Bonjour le forum je cherche à mettre à jour mon onglet feuil1 avec les informations de l'onglet info en fonction de la date de l'onglet info A4
merci de votre aide
 

Fichiers joints

JHA

XLDnaute Barbatruc
Bonjour à tous,

Si tu veux mettre à jour chaque jour sans effacer les anciennes données dans "Feuil1", il faut passer par du code VBA mais désolé, ce n'est pas pour moi car je suis nul en macro.

Autrement, si tu ne veux qu'une seule ligne, voici une méthode.

JHA
 

Fichiers joints

gothc

XLDnaute Occasionnel
bonjour oui j'ai besoin d'un code vba pour cette mise a jour
Merci de ton aide
 

sylvanu

XLDnaute Barbatruc
Supporter XLD
Bonjour Gothc, JHA,
Un essai en PJ.
La mise à jour se fait par appui sur GO.
Toutes les lignes dans Info sont traitées.
Par la même occasion j'ai supprimé toutes les formules en Feuil1 et calculais en macro.
VB:
Sub MAJ()
On Error GoTo Fin
' Cr donne le N° de colonne à copier
' Cw le N° de colonne où il faut coller
Cr = Array(2, 3, 4, 8, 11, 15, 19, 22, 25, 29, 33, 37)
Cw = Array(2, 3, 6, 7, 10, 11, 14, 15, 18, 19, 22, 23)
' Dernière ligne à traiter
DerLig = 4 + Application.WorksheetFunction.CountA(Range("A4:A1000"))
For L = 4 To DerLig
    IndexW = Application.Match(Cells(L, 1), Sheets("Feuil1").Range("A:A"), 0)
    For c = 0 To UBound(Cr)
        Sheets("Feuil1").Cells(IndexW, Cw(c)) = Cells(L, Cr(c))
    Next c
    For c = 4 To 24 Step 4
        Sheets("Feuil1").Cells(IndexW, c) = Sheets("Feuil1").Cells(IndexW, c - 2) - Sheets("Feuil1").Cells(IndexW, c - 1)
        Sheets("Feuil1").Cells(IndexW, c + 1) = Sheets("Feuil1").Cells(IndexW, c) / Sheets("Feuil1").Cells(IndexW, c - 2)
    Next c
Next L
Fin:
End Sub
 

Fichiers joints

gothc

XLDnaute Occasionnel
Bonjour Gothc, JHA,
Un essai en PJ.
La mise à jour se fait par appui sur GO.
Toutes les lignes dans Info sont traitées.
Par la même occasion j'ai supprimé toutes les formules en Feuil1 et calculais en macro.
VB:
Sub MAJ()
On Error GoTo Fin
' Cr donne le N° de colonne à copier
' Cw le N° de colonne où il faut coller
Cr = Array(2, 3, 4, 8, 11, 15, 19, 22, 25, 29, 33, 37)
Cw = Array(2, 3, 6, 7, 10, 11, 14, 15, 18, 19, 22, 23)
' Dernière ligne à traiter
DerLig = 4 + Application.WorksheetFunction.CountA(Range("A4:A1000"))
For L = 4 To DerLig
    IndexW = Application.Match(Cells(L, 1), Sheets("Feuil1").Range("A:A"), 0)
    For c = 0 To UBound(Cr)
        Sheets("Feuil1").Cells(IndexW, Cw(c)) = Cells(L, Cr(c))
    Next c
    For c = 4 To 24 Step 4
        Sheets("Feuil1").Cells(IndexW, c) = Sheets("Feuil1").Cells(IndexW, c - 2) - Sheets("Feuil1").Cells(IndexW, c - 1)
        Sheets("Feuil1").Cells(IndexW, c + 1) = Sheets("Feuil1").Cells(IndexW, c) / Sheets("Feuil1").Cells(IndexW, c - 2)
    Next c
Next L
Fin:
End Sub
Merci beaucoup de votre réponse bonne journée à vous
 

Créez un compte ou connectez vous pour répondre

Vous devez être membre afin de pouvoir répondre ici

Créer un compte

Créez un compte Excel Downloads. C'est simple!

Connexion

Vous avez déjà un compte? Connectez vous ici.

Haut Bas