Extraction date de modification fichier
Résolu/Fermé
Loiwi
Messages postés
36
Date d'inscription
vendredi 1 février 2019
Statut
Membre
Dernière intervention
29 septembre 2020
-
20 janv. 2020 à 13:26
Loiwi Messages postés 36 Date d'inscription vendredi 1 février 2019 Statut Membre Dernière intervention 29 septembre 2020 - 29 janv. 2020 à 13:15
Loiwi Messages postés 36 Date d'inscription vendredi 1 février 2019 Statut Membre Dernière intervention 29 septembre 2020 - 29 janv. 2020 à 13:15
A voir également:
- Excel récupérer la date de modification d'un fichier
- Comment réduire la taille d'un fichier - Guide
- Fichier rar - Guide
- Comment ouvrir un fichier epub ? - Guide
- Comment recuperer un message supprimé sur whatsapp - Guide
- Ouvrir un fichier .dat - Guide
18 réponses
Loiwi
Messages postés
36
Date d'inscription
vendredi 1 février 2019
Statut
Membre
Dernière intervention
29 septembre 2020
1
20 janv. 2020 à 16:08
20 janv. 2020 à 16:08
C'est un bon début mais cela signifie que je ne peux pas utiliser de point dans le titre?
via55
Messages postés
14499
Date d'inscription
mercredi 16 janvier 2013
Statut
Membre
Dernière intervention
26 novembre 2024
2 735
21 janv. 2020 à 13:12
21 janv. 2020 à 13:12
Je ne vois pas pourquoi la message box ne s’afficherait pas, chez moi cela fonctionne !
via55
Messages postés
14499
Date d'inscription
mercredi 16 janvier 2013
Statut
Membre
Dernière intervention
26 novembre 2024
2 735
20 janv. 2020 à 13:52
20 janv. 2020 à 13:52
Bonjour Loiwi
Si tu vraiment automatiser le processus ce n'est pas un bouton qu'il faut mettre en place c'est une macro qui se déclenche à chaque modification d'une colonne dans le fichier, macro qui :
- ouvrira le dossier suivi
- copiera sur la1ere ligne vide le nom de la demande client et la date du jour
- fermera le dossier suivi
Ce qu'il faut déterminer c'est où se situe la modification qui va déclencher le macro
Des exemples de tes fichier de base et de suivi seraient les bienvenus (à poster sur mon-partage.fr, copier les liens créés et revenir les coller ici)
Cdlmnt
Via
Si tu vraiment automatiser le processus ce n'est pas un bouton qu'il faut mettre en place c'est une macro qui se déclenche à chaque modification d'une colonne dans le fichier, macro qui :
- ouvrira le dossier suivi
- copiera sur la1ere ligne vide le nom de la demande client et la date du jour
- fermera le dossier suivi
Ce qu'il faut déterminer c'est où se situe la modification qui va déclencher le macro
Des exemples de tes fichier de base et de suivi seraient les bienvenus (à poster sur mon-partage.fr, copier les liens créés et revenir les coller ici)
Cdlmnt
Via
Loiwi
Messages postés
36
Date d'inscription
vendredi 1 février 2019
Statut
Membre
Dernière intervention
29 septembre 2020
1
Modifié le 20 janv. 2020 à 14:08
Modifié le 20 janv. 2020 à 14:08
Je ne voulais pas aller aussi loin mais si c'est possible de faire quelque chose en ce sens, pourquoi pas?
L'idée de départ c'est de ne pas avoir à rentrer à la main les données dans un fichier.
Est-il possible de déclencher la macro lorsque la demande client est ouverte depuis ma session? Faut-il activer le suivi de modifications pour cela?
Hélas je n'ai pas d'exemple à donner car ce que je souhaite obtenir ne dépend pas du contenu des demandes clients et pour le fichier de suivi, j'ai simplement besoin du nom de la demande et de la date
L'idée de départ c'est de ne pas avoir à rentrer à la main les données dans un fichier.
Est-il possible de déclencher la macro lorsque la demande client est ouverte depuis ma session? Faut-il activer le suivi de modifications pour cela?
Hélas je n'ai pas d'exemple à donner car ce que je souhaite obtenir ne dépend pas du contenu des demandes clients et pour le fichier de suivi, j'ai simplement besoin du nom de la demande et de la date
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
via55
Messages postés
14499
Date d'inscription
mercredi 16 janvier 2013
Statut
Membre
Dernière intervention
26 novembre 2024
2 735
20 janv. 2020 à 14:28
20 janv. 2020 à 14:28
Tu dis que ta demande client est représentée par un fichier Excel
Chaque fois que tu ouvres ce dossier Excel tu voudrais que le nom et la date soient transférés dans le dossier suivi ?
Tu as un fichier Excel par client ? Combien de fichiers alors ?
Il faudrait que la macro soit installée dans chaque fichier client et soit déclenchée soit par l'ouverture soit par la fermeture du fichier client (ce qui est possible)
Si le nom de la demande client est chaque fois dans la même cellule (par ex A1) la macro peut récupérer le nom, si le nom de la demande est le nom du fichier Excel, la macro peut également récupérer ce nom
Chaque fois que tu ouvres ce dossier Excel tu voudrais que le nom et la date soient transférés dans le dossier suivi ?
Tu as un fichier Excel par client ? Combien de fichiers alors ?
Il faudrait que la macro soit installée dans chaque fichier client et soit déclenchée soit par l'ouverture soit par la fermeture du fichier client (ce qui est possible)
Si le nom de la demande client est chaque fois dans la même cellule (par ex A1) la macro peut récupérer le nom, si le nom de la demande est le nom du fichier Excel, la macro peut également récupérer ce nom
Loiwi
Messages postés
36
Date d'inscription
vendredi 1 février 2019
Statut
Membre
Dernière intervention
29 septembre 2020
1
20 janv. 2020 à 14:43
20 janv. 2020 à 14:43
Non pas à chaque ouverture, j'aurais du être un peu plus précis au départ. Ce que j'imaginais c'est d'avoir deux boutons dans la barre d'accès rapide. Un qui m'enregistre le nom de la demande et la date de dernière modification avant que je commence à travailler dessus (Ceci pour définir la date à laquelle je suis censé commencer à travailler dessus) dans le fichier de suivi (Plus précisément dans la première et la deuxième colonnes) et le deuxième pour enregistrer la date à laquelle j'ai fini de travailler dessus dans la troisième colonne du fichier de suivi.
Si je n'ai pas détaillé ceci c'est parce que j'imaginais que c'était plus ou moins la même macro mais qui enregistre le résultat dans deux colonnes différentes
Il y'a effectivement un fichier par demande client.
J'espère que le nombre de fichiers n'est pas un point bloquant car c'est un indicateur que l'on veut mettre en place durablement
Pour le nom du fichier, il est toujours dans la même cellule mais j'ai une préférence pour récupérer le nom de la demande afin d'éviter qu'un petit plaisantin modifie la position de la cellule contenant le nom de la demande
Si je n'ai pas détaillé ceci c'est parce que j'imaginais que c'était plus ou moins la même macro mais qui enregistre le résultat dans deux colonnes différentes
Il y'a effectivement un fichier par demande client.
J'espère que le nombre de fichiers n'est pas un point bloquant car c'est un indicateur que l'on veut mettre en place durablement
Pour le nom du fichier, il est toujours dans la même cellule mais j'ai une préférence pour récupérer le nom de la demande afin d'éviter qu'un petit plaisantin modifie la position de la cellule contenant le nom de la demande
via55
Messages postés
14499
Date d'inscription
mercredi 16 janvier 2013
Statut
Membre
Dernière intervention
26 novembre 2024
2 735
20 janv. 2020 à 15:27
20 janv. 2020 à 15:27
Je comprends mieux les 2 boutons
1) il faudra installer ces 2 boutons avec leurs macros liées dans tous les fichiers demande client ou alors sur un modèle vierge qui est copié pour chaque nouvelle demande client (je en sais pas comment tu fonctionnes)
2) Pour les macros si tu ne récupères pas le nom du fichier dans une cellule où compte-tu le récupérer ?
1) il faudra installer ces 2 boutons avec leurs macros liées dans tous les fichiers demande client ou alors sur un modèle vierge qui est copié pour chaque nouvelle demande client (je en sais pas comment tu fonctionnes)
2) Pour les macros si tu ne récupères pas le nom du fichier dans une cellule où compte-tu le récupérer ?
Loiwi
Messages postés
36
Date d'inscription
vendredi 1 février 2019
Statut
Membre
Dernière intervention
29 septembre 2020
1
20 janv. 2020 à 15:37
20 janv. 2020 à 15:37
1) Si je me base sur certains fichiers chez nous, il est possible de créer des commandes dans la barre d'outils accès rapide d'Excel associées à des macros. Pour ce point, je peux redemander à mes collègues comment faire. Et si ça intéresse quelqu'un qui passe sur ce sujet, je pourrais lui expliquer comment faire
2) Peux-t'on récupérer directement le nom du fichier?
2) Peux-t'on récupérer directement le nom du fichier?
via55
Messages postés
14499
Date d'inscription
mercredi 16 janvier 2013
Statut
Membre
Dernière intervention
26 novembre 2024
2 735
20 janv. 2020 à 16:03
20 janv. 2020 à 16:03
oui il est possible de créer des commandes associées à des macros et si les macros sont dans le classeur de macros personnel elles sont en principe accessibles depuis n'importe quel fichier excel ouvert sur l'ordinateur qui a le classeur de macro perso
Pour récupérer le nom du fichier actif la ligne de macro serait
ActiveWorkbook donne le nom du fichier avec son extension .xlsx par ex; donc on ne prend que ce qui est à gauche du point pour avoir le nom seul
Pour récupérer le nom du fichier actif la ligne de macro serait
nomfic= Left(ActiveWorkbook.Name, Application.WorksheetFunction.Find(".", ActiveWorkbook.Name) - 1)
ActiveWorkbook donne le nom du fichier avec son extension .xlsx par ex; donc on ne prend que ce qui est à gauche du point pour avoir le nom seul
via55
Messages postés
14499
Date d'inscription
mercredi 16 janvier 2013
Statut
Membre
Dernière intervention
26 novembre 2024
2 735
20 janv. 2020 à 16:11
20 janv. 2020 à 16:11
Oui il vaut mieux
ou alors il faudrait une formule plus complexe pour rechercher le dernier point
ou alors il faudrait une formule plus complexe pour rechercher le dernier point
Loiwi
Messages postés
36
Date d'inscription
vendredi 1 février 2019
Statut
Membre
Dernière intervention
29 septembre 2020
1
20 janv. 2020 à 16:14
20 janv. 2020 à 16:14
Nos demandes clients sont référencés par un code qui a toujours la même longueur. Peut-on utiliser une macro qui reprend les n premiers caractères du titre?
via55
Messages postés
14499
Date d'inscription
mercredi 16 janvier 2013
Statut
Membre
Dernière intervention
26 novembre 2024
2 735
20 janv. 2020 à 16:18
20 janv. 2020 à 16:18
Dans ce cas oui
Pour prendre les 10 premiers caractères :
Pour prendre les 10 premiers caractères :
nomfic= Left(ActiveWorkbook.Name,10)
Loiwi
Messages postés
36
Date d'inscription
vendredi 1 février 2019
Statut
Membre
Dernière intervention
29 septembre 2020
1
20 janv. 2020 à 16:36
20 janv. 2020 à 16:36
Merci, donc pour l'instant, j'ai la macro suivante:
Sub Date_of_entry()
nomfic = Left(ActiveWorkbook.Name, 13)
Sheets("Feuil1").Range("A2") = nomfic
Sheets("Feuil1").Range("B2").Value = ActiveWorkbook.BuiltinDocumentProperties.Item("Last Save Time")
End Sub
J'ai donc réussi à extraire le nom du fichier en A2 et la date de modification en B2
Comment incrémenter la macro pour qu'il m'inscrive les résultats en A3 et B3 la fois suivante, puis A4,B4...etc.? (C'est déjà une victoire pour moi avec mes faibles connaissances en macro)
Si je lance la macro tel quelle dans un fichier Excel, il va inscrire la valeur dans le fichier ouvert et pas dans mon fichier de suivi non?
Autre question, comment convertir la date sous la forme heure, minute,jour,mois,année?
Sub Date_of_entry()
nomfic = Left(ActiveWorkbook.Name, 13)
Sheets("Feuil1").Range("A2") = nomfic
Sheets("Feuil1").Range("B2").Value = ActiveWorkbook.BuiltinDocumentProperties.Item("Last Save Time")
End Sub
J'ai donc réussi à extraire le nom du fichier en A2 et la date de modification en B2
Comment incrémenter la macro pour qu'il m'inscrive les résultats en A3 et B3 la fois suivante, puis A4,B4...etc.? (C'est déjà une victoire pour moi avec mes faibles connaissances en macro)
Si je lance la macro tel quelle dans un fichier Excel, il va inscrire la valeur dans le fichier ouvert et pas dans mon fichier de suivi non?
Autre question, comment convertir la date sous la forme heure, minute,jour,mois,année?
via55
Messages postés
14499
Date d'inscription
mercredi 16 janvier 2013
Statut
Membre
Dernière intervention
26 novembre 2024
2 735
20 janv. 2020 à 17:33
20 janv. 2020 à 17:33
La macro modifiée pour inscrire dans suivi
Les colonne A et B de ton fichier de suivi doivent avoir en ligne 1 un titre pour que la ligne de macro qui recherche la première ligne vide fonctionne
En principe la date s'affiche bien sous la forme 20/01/2020 17:11:21
Si ce n'est pas le cas où si tu veux un autre format passe par un Format personnalisé pour toute ta colonne B de ton fichier suivi
Sub Date_of_entry() nomfic = Left(ActiveWorkbook.Name, 13) datemodif = ActiveWorkbook.BuiltinDocumentProperties.Item("Last Save Time") nomfichsuiv = "fichier_suivi.xlsx" Workbooks.Open ("D:\1aout2017\GROUPaout16\Autres Ex et PP\" & nomfichsuiv) 'remplacer ici par le chemin de ton fichier de suivi 'remplacer Feuil1 par autre nom de feuille si nécessaire ligne = Workbooks(nomfichsuiv).Sheets("Feuil1").Columns(1).Find("*", , , , xlByColumns, xlPrevious).Row + 1 ' première ligne vide en colonne A Workbooks(nomfichsuiv).Sheets("Feuil1").Range("A" & ligne) = nomfic Workbooks(nomfichsuiv).Sheets("Feuil1").Range("B" & ligne) = datemodif Workbooks(nomfichsuiv).Save Workbooks(nomfichsuiv).Close MsgBox "Enregistrement du suivi effectué" End Sub
Les colonne A et B de ton fichier de suivi doivent avoir en ligne 1 un titre pour que la ligne de macro qui recherche la première ligne vide fonctionne
En principe la date s'affiche bien sous la forme 20/01/2020 17:11:21
Si ce n'est pas le cas où si tu veux un autre format passe par un Format personnalisé pour toute ta colonne B de ton fichier suivi
Loiwi
Messages postés
36
Date d'inscription
vendredi 1 février 2019
Statut
Membre
Dernière intervention
29 septembre 2020
1
21 janv. 2020 à 08:31
21 janv. 2020 à 08:31
Merci, le code semble bien défini mais je n'arrive pas à le tester. En effet, lorsque je lance la macro, le message "En raison de vos paramètres de sécurité, les macros ont été désactivées".
Je me doute bien que cela n'a rien à voir avec le code mais est plutôt un problème de configuration.
Je suis donc allé dans l'onglet "Paramètres des macros" du centre de gestion de la confidentialité et les options de "Paramètres de macros" sont grisées et non modifiables. Donc que faut-il faire?
Je me doute bien que cela n'a rien à voir avec le code mais est plutôt un problème de configuration.
Je suis donc allé dans l'onglet "Paramètres des macros" du centre de gestion de la confidentialité et les options de "Paramètres de macros" sont grisées et non modifiables. Donc que faut-il faire?
Loiwi
Messages postés
36
Date d'inscription
vendredi 1 février 2019
Statut
Membre
Dernière intervention
29 septembre 2020
1
21 janv. 2020 à 11:19
21 janv. 2020 à 11:19
Le problème est solutionné, j'ai pu exécuter les deux macros, les dates de dernières modifications sont bien enregistrées par contre la message box ne s'affiche pas
Loiwi
Messages postés
36
Date d'inscription
vendredi 1 février 2019
Statut
Membre
Dernière intervention
29 septembre 2020
1
21 janv. 2020 à 14:16
21 janv. 2020 à 14:16
Effectivement c'est bizarre mais ce n'est pas un point bloquant. On peut considérer que tu as répondu à ma demande. merci beaucoup!
Loiwi
Messages postés
36
Date d'inscription
vendredi 1 février 2019
Statut
Membre
Dernière intervention
29 septembre 2020
1
29 janv. 2020 à 13:15
29 janv. 2020 à 13:15
Bonjour à tous, je voulais juste signaler que j'ai réussi à afficher la messagebox en déplaçant le code la ligne 12 vers la ligne 10 de l'exemple de via55. Ainsi la message box s'affiche et le fichier de suivi ne se ferme pas tant que je n'ai pas cliqué sur "OK". Je peux donc vérifier en temps réel que l'enregistrement a bien fonctionné