Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

Mettre à jour un fichier Xlsx en fonction d'un autre chaque jour

  • Initiateur de la discussion Initiateur de la discussion karmeliet
  • 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 !

K

karmeliet

Guest
Bonjour à tous,

Voilà je suis confronté à un probleme et je ne vois absolument pas comment faire.

J'ai un fichier de "statistiques" nommé Final (en xlsx) et un second fichier journalier nommé TempJour (en xls).

Je souhaite que chaque jour, la feuille de Final reprenne les données de TempJour en fonction de la date et alimente la ligne mais que celle ci reste figé.

De tel sorte que si on modifie le fichier TempJour, il ne perd pas les précédentes valeurs et conserve ce qu'il a récupérer.

Le but serait que le processus soit automatique et que je n'ai pas besoin d'intervenir sur le fichier pour que cela se fasse.

Auriez vous une idée?

Merci d'avance
 

Pièces jointes

Re : Mettre à jour un fichier Xlsx en fonction d'un autre chaque jour

Bonjour,

Il existe tout un panel de solutions différentes ...

D'après la description de ton objectif, le plus simple semble être une macro qui ouvre ton second fichier, y stocke tes données, le sauve, puis le ferme ...

A +
🙂
 
Re : Mettre à jour un fichier Xlsx en fonction d'un autre chaque jour

J'ai bien compris qu'il fallait passer systématiquement par une macro.

Par contre comment la faire c'est la question

Merci en tout cas
 
Re : Mettre à jour un fichier Xlsx en fonction d'un autre chaque jour

Re,

Pour chacune des étapes, plusieurs discussions identiques ont déjà eu lieu sur le Forum.

Il faut donc commencer par faire des recherches, adapter le code que tu trouveras ...

et si besoin est, il y aura toujours une personne pour t'aider à finir ton projet ...

A +
🙂
 
Re : Mettre à jour un fichier Xlsx en fonction d'un autre chaque jour

Quelqu'un pourrait me guider?

Suis pas tres doué j'avoues

 
Re : Mettre à jour un fichier Xlsx en fonction d'un autre chaque jour

Bonjour,

A priori ... pour une nouvelle question, il vaudrait mieux ouvrir un nouveau fil ...

Il semblerait que tu veuilles écrire une formule qui soit avec des références relatives ...
Le mieux est d'expliciter ton objectif et de décrire le résultat attendu ...

A +
🙂
 
Re : Mettre à jour un fichier Xlsx en fonction d'un autre chaque jour

Il s'agit toujours de la même question

çà serait plutot quelques choses qui ressemble à çà :

Code:
Sub Macro1()
'
' Macro1 Macro
'

For i = 1 To 65289
If Range("A" & i).Value = Range("[TempJour.xls]Feuil1!J28").Value Then
    ActiveCell.FormulaR1C1 = "=[TempJour.xls]Feuil1!R3C4"
    Range("C" & i).Select
    ActiveCell.FormulaR1C1 = "=[TempJour.xls]Feuil1!R4C4"
    Range("D" & i).Select
End If
End Sub

Ce qui se passe :
Je cherche dans le fichier Final colonne A la date
si la date est égale à la date dans TempJour
J'alimente la ligne A avec les valeurs des bonnes cellules de TempJour
Une fois fait, çà sauvegarde.

Le but est que le fichier Final reprenne les données chaque jour sans les effacer
de tel sorte qu'on a un historique. Sachant que le fichier TempJour est changé lui tout les jours en conséquence il faut surtout que çà reprenne les valeurs et non pas que çà fasse une liaison, j'avais fait une fonction Si qui marchait mais le probleme c'est que Tempjour étant éffacé, les valeurs sont enlevées chaque jour.

Merci beaucoup
 
Dernière modification par un modérateur:
Re : Mettre à jour un fichier Xlsx en fonction d'un autre chaque jour

Bonjour,

Merci pour tes explications complémentaires ...

Ton objectif est de transposer tes données ...

Pour cela, il serait pertinent que tu modifies légèrement la structure de ton fichier Tempjour, avec, à partir de B1 tes dates ... Donnée1 en B2 ...Donnée2 en B3

Tu peux faire un test de transposition ... pour confirmer que c'est bien ton objectif.

A +
🙂
 
Re : Mettre à jour un fichier Xlsx en fonction d'un autre chaque jour

Bonjour le fil 🙂,
A condition d'enregistrer Final en XLSM pour conserver les macros, mettre toutes les dates dans Final (un peu farce le coup de janvier 2010 dans Final alors que la date est en février 2011 dans TempJour 😡...) et d'ouvrir TempJour avant de lancer la macro
Code:
Sub Test()
Dim I As Integer, Temp As Workbook
For Each Temp In Workbooks
If Temp.Name = "TempJour.xls" Then
With Temp.ActiveSheet
I = Sheets("Feuil1").Columns(1).Find(.Range("E1")).Row
Cells(I, 2) = .Cells(3, 4)
Cells(I, 3) = .Cells(4, 4)
End With
End If
Next Temp
End Sub
fonctionne 😛...
Bon dimanche 😎
 
Re : Mettre à jour un fichier Xlsx en fonction d'un autre chaque jour

Pardon pour la tite subtilité des dates j'avais oublié de corriger 😀

Sinon si je comprend la formule (et oui suis qqn qui a besoin de comprendre)

On crée un tableau temporaire
Pour tout les tableau "ouvert",
si le nom est égal à "Tempjour.xls" alors
a partir de la feuille ouverte
On recherche i (qui sera la ligne) ou la cellule de la colonne 1 est égale à la cellule E1
et on insére alors dans la cellule de "ligne i" et de colonne "2" la cellule de ligne 3 et colonne 4

Est ce que c'est bien çà ?

Si on veut le faire avec des noms de feuilles c possible en remplaçant par qqchose du type :
Code:
Sub Test()
Dim I As Integer, Temp As Sheet
For Each Temp In Sheet
If Temp.Name = "TempJour" Then
I = Sheets("TempJour").Columns(1).Find(.Range("E1")).Row
Cells(I, 2) = .Cells(3, 4)
Cells(I, 3) = .Cells(4, 4)
End If
Next Temp
End Sub
ou je me plante?

En tout cas, grand merci à vous
 
Dernière modification par un modérateur:
Re : Mettre à jour un fichier Xlsx en fonction d'un autre chaque jour

Re 🙂,
ou je me plante?
Oui et pas qu'un peu 😛...
Ma macro n'utilise pas de tableaux, elle regarde les classeurs (fichier Excel) ouverts, quand elle trouve le classeur adequat, elle copie les valeurs de ce classeur dans le classeur qui comprend la macro 😉.
Maintenant si tu veux jouer sur des feuilles, la feuille c'est Worksheet, et la collection à décrire c'est ThisWorkbook.Worksheets avec un "s".
Bon courage 😎
 
- 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
Assurez vous de marquer un message comme solution pour une meilleure transparence.

Discussions similaires

A
Réponses
1
Affichages
2 K
Alainpol
A
O
Réponses
0
Affichages
789
oliver91
O
T
Réponses
1
Affichages
1 K
Thibault LB
T
G
Réponses
4
Affichages
1 K
C
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…