Mise a jour en fonction d'une date

  • Initiateur de la discussion Initiateur de la discussion gothc
  • Date de début Date de début

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

Re : Mise a jour en fonction d'une date

Avec ma boule de cristal (je pense qu'elle brille bien) sans avoir lu ton dernier post que je viens de voir

code à mettre dans un module standard + Bouton pour lancer la macro sur ta feuille

Code:
Sub sauv()
Dim FSource, FDest As Worksheet

Set FSource = Worksheets("ENCOURS RCJ-KOM EX 15-16")
Set FDest = Worksheets("2")

JourSauv = DateSerial(Year(FSource.Range("M1")), Month(FSource.Range("M1")), FSource.Range("L1"))

With FDest.Range("C4:C240")
    Set ici = .Find(CDate(JourSauv), LookIn:=xlValues)
    l = ici.Row
End With

FDest.Cells(l, 4) = FSource.Range("I27")
FDest.Cells(l, 5) = FSource.Range("I32")
FDest.Cells(l, 7) = FSource.Range("I36")
FDest.Cells(l, 9) = FSource.Range("P32")
FDest.Cells(l, 13) = FSource.Range("P34")
End Sub
 
Dernière édition:
Re : Mise a jour en fonction d'une date

A mon avis tu ne peux pas le faire avec des formules, ça ne gardera pas l'historique, dès que tu changeras ta date ça disparaîtra, il faut le faire en VBA.
Et je comprend pas bien pourquoi tu affiche 5 mars alors que la date dans la cellule est 1 mars.

en D4
Code:
=SI(C4='ENCOURS RCJ-KOM EX 15-16'!$M$1;'ENCOURS RCJ-KOM EX 15-16'!$I$27;"")
Mais quelque soit la formule dès que tu changera de date ça disparaîtra. faut du VBA pour reporter les résultats en valeur.

[edit] vgendron te donne la bonne solution.

@+
 
Re : Mise a jour en fonction d'une date

Hello David

meme code avec des commentaires: surtout pour cette histoire de date en deux cellules..je vois pas l'interet..
Code:
Sub sauv()
Dim FSource, FDest As Worksheet


Set FSource = Worksheets("ENCOURS RCJ-KOM EX 15-16")
Set FDest = Worksheets("2")

'on reconstruit le jour à chercher. (pourquoi ne pas mettre directement dans une seule cellule??
JourSauv = DateSerial(Year(FSource.Range("M1")), Month(FSource.Range("M1")), FSource.Range("L1"))
'sinon, si la date complète est en M1
'JourSauv=FSource.range("M1")

'on cherche la ligne correspondante dans la feuille destination
With FDest.Range("C4:C240")
    Set ici = .Find(CDate(JourSauv), LookIn:=xlValues)
    l = ici.Row
End With

'on recopie les datas de feuille source vers feuille destination
FDest.Cells(l, 4) = FSource.Range("I27")
FDest.Cells(l, 5) = FSource.Range("I32")
FDest.Cells(l, 7) = FSource.Range("I36")
FDest.Cells(l, 9) = FSource.Range("P32")
FDest.Cells(l, 13) = FSource.Range("P34")

End Sub
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD

Discussions similaires

Réponses
18
Affichages
569
Réponses
7
Affichages
290
Retour