Во многих случаях вам может потребоваться показать дату и время последнего сохранения файла Excel, чтобы узнать, когда файл был недавно обновлен. Вы можете решить эту проблему с помощью методов, представленных в этой статье.
Вставьте последнюю сохраненную метку времени на лист с пользовательской функцией
Легко вставьте последнюю сохраненную метку времени на лист с помощью Kutools for Excel
Вставьте последнюю сохраненную метку времени на лист с пользовательской функцией
Вы можете использовать следующую определяемую пользователем функцию, чтобы вставить последнюю сохраненную метку времени книги на определенный рабочий лист.
1. Нажмите другой + F11 клавиши одновременно, чтобы открыть Microsoft Visual Basic для приложений окно.
2. в Microsoft Visual Basic для приложений окна, нажмите Вставить > Модули. Затем скопируйте и вставьте следующий код VBA в окно кода.
Код VBA: вставьте последнюю сохраненную метку времени на лист
Function LastSavedTimeStamp() As Date
LastSavedTimeStamp = ActiveWorkbook.BuiltinDocumentProperties("Last Save Time")
End Function
3. Нажмите другой + Q ключи, чтобы закрыть Microsoft Visual Basic для приложений окно и вернитесь к рабочему листу.
4. Выберите пустую ячейку, в которой будет отображаться последняя сохраненная метка времени книги, введите формулу. = LastSavedTimeStamp () и нажмите Enter нажмите клавишу, и отобразится номер.
5. Затем вам нужно отформатировать числовую ячейку как формат даты и времени, как показано на скриншоте ниже.
Теперь в выбранной ячейке отображается последняя сохраненная метка времени.
Примечание. Если вы хотите повторно использовать VBA в будущем, сохраните книгу как книгу Excel с поддержкой макросов.
Легко вставьте последнюю сохраненную метку времени на лист с помощью Kutools for Excel
Наблюдения и советы этой статьи мы подготовили на основании опыта команды Вставить информацию о книге полезности Kutools for Excel поможет вам быстро вставить последнюю сохраненную или измененную метку времени не только в указанную ячейку, но и в верхний или нижний колонтитул по мере необходимости.
1. Выберите пустую ячейку для отображения последней сохраненной метки времени, затем щелкните Кутулс Плюс > Workbook > Вставить информацию о книге. Смотрите скриншот:
2. в Вставить информацию о книге в диалоговом окне выберите Дата изменена вариант в Информация раздел, затем выберите нужный вариант в Вставить в (в данном случае я выбираю вариант диапазона) и, наконец, щелкаю OK кнопку.
Затем на листе отображается последняя сохраненная метка времени.
Внимание: Если вам нужно вставить последнюю сохраненную метку времени в верхний или нижний колонтитул текущего рабочего листа, выберите заголовок or нижний колонтитул опцию.
Если вы хотите получить бесплатную пробную версию (30-день) этой утилиты, пожалуйста, нажмите, чтобы загрузить это, а затем перейдите к применению операции в соответствии с указанными выше шагами.
Легко вставьте последнюю сохраненную метку времени на лист с помощью Kutools for Excel
Статьи по теме:
- Как получить и вставить последнее измененное имя пользователя в Excel?
- Как распечатать имя листа или список имен листов в Excel?
Лучшие инструменты для работы в офисе
Kutools for Excel Решит большинство ваших проблем и повысит вашу производительность на 80%
- Снова использовать: Быстро вставить сложные формулы, диаграммы и все, что вы использовали раньше; Зашифровать ячейки с паролем; Создать список рассылки и отправлять электронные письма …
- Бар Супер Формулы (легко редактировать несколько строк текста и формул); Макет для чтения (легко читать и редактировать большое количество ячеек); Вставить в отфильтрованный диапазон…
- Объединить ячейки / строки / столбцы без потери данных; Разделить содержимое ячеек; Объединить повторяющиеся строки / столбцы… Предотвращение дублирования ячеек; Сравнить диапазоны…
- Выберите Дубликат или Уникальный Ряды; Выбрать пустые строки (все ячейки пустые); Супер находка и нечеткая находка во многих рабочих тетрадях; Случайный выбор …
- Точная копия Несколько ячеек без изменения ссылки на формулу; Автоматическое создание ссылок на несколько листов; Вставить пули, Флажки и многое другое …
- Извлечь текст, Добавить текст, Удалить по позиции, Удалить пробел; Создание и печать промежуточных итогов по страницам; Преобразование содержимого ячеек в комментарии…
- Суперфильтр (сохранять и применять схемы фильтров к другим листам); Расширенная сортировка по месяцам / неделям / дням, периодичности и др .; Специальный фильтр жирным, курсивом …
- Комбинируйте книги и рабочие листы; Объединить таблицы на основе ключевых столбцов; Разделить данные на несколько листов; Пакетное преобразование xls, xlsx и PDF…
- Более 300 мощных функций. Поддерживает Office/Excel 2007-2021 и 365. Поддерживает все языки. Простое развертывание на вашем предприятии или в организации. Полнофункциональная 30-дневная бесплатная пробная версия. 60-дневная гарантия возврата денег.
Вкладка Office: интерфейс с вкладками в Office и упрощение работы
- Включение редактирования и чтения с вкладками в Word, Excel, PowerPoint, Издатель, доступ, Visio и проект.
- Открывайте и создавайте несколько документов на новых вкладках одного окна, а не в новых окнах.
- Повышает вашу продуктивность на 50% и сокращает количество щелчков мышью на сотни каждый день!
Комментарии (11)
Оценок пока нет. Оцените первым!
aka.andrew Пользователь Сообщений: 26 |
В шаблоне книги есть формула =СЕГОДНЯ. После сохранения мне нужно через несколько дней вернуться в файл для редактирования, но чтобы дата осталось той, когда он был сохранен. |
Alemox Пользователь Сообщений: 2183 |
Перед сохранением файла надо скопировать эту ячейку и вставить в эту же ячейку как данные (123). Мастерство программиста не в том, чтобы писать программы, работающие без ошибок. |
aka.andrew Пользователь Сообщений: 26 |
Alemox, я это понимаю. Я спрашивал как это можно делать автоматически (формулой/макросом) ?? чтобы не заниматься этими вставками вручную… |
Юрий М Модератор Сообщений: 60588 Контакты см. в профиле |
aka.andrew, у Вас две практически одинаковых темы. |
vikttur Пользователь Сообщений: 47199 |
Ограничение заданной датой: |
aka.andrew Пользователь Сообщений: 26 |
vikttur, не совсем понятно, в формуле дату 31.05.2017 вручную нужно прописывать?? |
JayBhagavan Пользователь Сообщений: 11833 ПОЛ: МУЖСКОЙ | Win10x64, MSO2019x64 |
#7 31.05.2017 15:43:46
По какому событию макрос должен в книге фиксировать дату? <#0> |
||
aka.andrew Пользователь Сообщений: 26 |
JayBhagavan, не совсем понимаю вопрос. |
JayBhagavan Пользователь Сообщений: 11833 ПОЛ: МУЖСКОЙ | Win10x64, MSO2019x64 |
aka.andrew, я не понимаю зачем Вам формула СЕГОДНЯ()? Почему просто не поставить текущую дату? Тем более, если Вы не можете сказать когда СЕГОДНЯ() заменить на значение, то Вам никто не поможет. Задача Ваша и Вам в неё вникать. Наше дело помочь в решении конкретного вопроса, а не сделать всё за Вас. Тут не джины, а люди. <#0> |
vikttur Пользователь Сообщений: 47199 |
#10 31.05.2017 16:14:52
Да, я лишь показал Вам вариант. По другому формулой не сделать. |
||
Юрий М Модератор Сообщений: 60588 Контакты см. в профиле |
aka.andrew, ответ на Ваш вопрос дан в другой Вашей теме — макросом это нужно делать. |
aka.andrew Пользователь Сообщений: 26 |
#12 31.05.2017 16:22:14
ну так текущая же дата также будет изменяться при повторном открытии файла в другой день?? |
||
JayBhagavan Пользователь Сообщений: 11833 ПОЛ: МУЖСКОЙ | Win10x64, MSO2019x64 |
#13 31.05.2017 16:24:03
Моя выдержка исчерпана. Ушёл из темы. <#0> |
||
Юрий М Модератор Сообщений: 60588 Контакты см. в профиле |
#14 31.05.2017 16:30:02
Если Вы введёте эту дату вручную, а не формулой (о чём Вам и говорили в #9), то почему она должна измениться? |
||
aka.andrew Пользователь Сообщений: 26 |
Юрий М, создал т.к. немного не понял вашей претензии относительно нескольких вопросов в теме. учту. |
Юрий М Модератор Сообщений: 60588 Контакты см. в профиле |
#16 31.05.2017 20:57:51
Вы пробовали записать макрос сохранения значений? |
||
RAN Пользователь Сообщений: 7091 |
aka.andrew, Функция СЕГОДНЯ() на то и существует, чтобы показывать СЕГОДНЯ, а не вчера. И она каждый день будет именно СЕГОДНЯ. И никто, и ничто, вам тут не поможет, если вы не откажетесь от ее использования. |
kuklp Пользователь Сообщений: 14868 E-mail и реквизиты в профиле. |
#18 31.05.2017 21:51:10 aka.andrew, але, дружище — исчерпывающий ответ был в посте №2 темы.
Что неясно? Делается это макросом по событию сохранения или закрытия книги. КОТОРУЮ ВЫ НАМ НЕ ПОКАЗЫВАЕТЕ! Я сам — дурнее всякого примера! … |
||
Ячейка содержит дату последнего сохранения |
||||||||
Ответить |
||||||||
Ответить |
||||||||
Ответить |
||||||||
Ответить |
||||||||
Ответить |
||||||||
Ответить |
||||||||
Ответить |
||||||||
Ответить |
||||||||
Ответить |
как в ячейке (или в 2разных ячейках) excell хранить дату и время изменения файла (те что в свойствах файла)?
Нужно для решения проблемы — при работе с данными экселя в другом файле (сводн.табл.) — видеть дату последнего сохранения исходного файла. Чайник я в этом… не могу докопаться… вроде все перепробовал… Помогите!
6 ответов
275
03 ноября 2005 года
pashulka
985 / / 19.09.2004
Дело в том, что указанное Вами свойство, хранит время последнего сохранения рабочей книги, а значит Вы можете использовать соответствующее событие рабочей книги :
Код:
Private Sub Workbook_BeforeSave(ByVal SaveAsUI As Boolean, Cancel As Boolean)
Worksheets(1).Range(«A1»).Value = Now ‘Now()
End Sub
Примечание : Разместить этот событие необходимо в модуле ThisWorkbook(ЭтаКнига) нужной рабочей книги.
405
03 ноября 2005 года
Dmitrii
554 / / 16.12.2004
Цитата:
Originally posted by ЖКа
как в ячейке (или в 2разных ячейках) excell хранить дату и время изменения файла (те что в свойствах файла)?
Нужно для решения проблемы — при работе с данными экселя в другом файле (сводн.табл.) — видеть дату последнего сохранения исходного файла. Чайник я в этом… не могу докопаться… вроде все перепробовал… Помогите!
Можете также воспользоваться для этого средствами VBS. Вот пример:
Код:
Function ShowFileModifiedInfo(ByVal fileSpec As String) As String
Dim myFSO As Object, myFile As Object
Set myFSO = CreateObject(«Scripting.FileSystemObject»)
If (myFSO.FileExists(fileSpec)) Then
Set myFile = myFSO.GetFile(fileSpec)
ShowFileModifiedInfo = myFile.DateLastModified
Else
ShowFileModifiedInfo = «Файл » & UCase(fileSpec) & » не найден.»
End If
End Function
Sub Test()
Dim timeModif As String
Const testFile = «c:tempbook.xls»
timeModif = ShowFileModifiedInfo(testFile)
MsgBox timeModif
End Sub
Такой способ избавляет от необходимости хранить нужные Вам значения в книге. Вы всегда сможете определить их «на лету».
275
11 ноября 2005 года
pashulka
985 / / 19.09.2004
Средствами VBA, также можно «на лету» определять дату и время последнего сохранения файла, например :
Код:
iFileDateTime = FileDateTime(ThisWorkbook.FullName)
iFileDateTime = FileDateTime(ActiveWorkbook.FullName)
iFileDateTime = FileDateTime(«C:ArchiveTemp.xls»)
305
12 ноября 2005 года
Kashuk
385 / / 21.02.2003
Цитата:
Originally posted by pashulka
Средствами VBA, также можно «на лету» определять дату и время последнего сохранения файла, например :
Код:
iFileDateTime = FileDateTime(ThisWorkbook.FullName)
iFileDateTime = FileDateTime(ActiveWorkbook.FullName)
iFileDateTime = FileDateTime(«C:ArchiveTemp.xls»)
А как это можно применить в ворде? Как «ThisWorkbook.FullName» заменить на текущий документ ворда?
305
12 ноября 2005 года
Kashuk
385 / / 21.02.2003
Цитата:
Originally posted by pashulka
Средствами VBA, также можно «на лету» определять дату и время последнего сохранения файла, например :
Код:
iFileDateTime = FileDateTime(ThisWorkbook.FullName)
iFileDateTime = FileDateTime(ActiveWorkbook.FullName)
iFileDateTime = FileDateTime(«C:ArchiveTemp.xls»)
А как это можно применить в ворде? Как «ThisWorkbook.FullName» заменить на текущий документ ворда?
275
12 ноября 2005 года
pashulka
985 / / 19.09.2004
Код:
iFileDateTime = FileDateTime(ThisDocument.FullName) ‘ActiveDocument
Примечание : Только документ должен быть сохранён, иначе Вы получите ошибку.
кто-нибудь знает, как отобразить последнюю сохраненную дату электронной таблицы Excel на одном из листов?
Я нашел способы сделать это с помощью макросов, но электронная таблица заполняется надстройкой под названием Jet Essentials, и это не нравится макросы, поэтому решение здесь не должно использовать один.
4 ответов
думал, что я обновлю об этом.
выяснил, что добавление в модуль VB за электронной таблицей фактически не регистрируется как макрос.
Итак, вот решение:
- Нажмите ALT + F11
- Нажать «Вставить» > Модуль
- вставьте в окно следующее:
код
Function LastSavedTimeStamp() As Date
LastSavedTimeStamp = ActiveWorkbook.BuiltinDocumentProperties("Last Save Time")
End Function
- сохраните модуль, закройте редактор и вернитесь на рабочий лист.
- Нажмите в Ячейка, в которой должна отображаться дата, и введите следующую формулу:
код
=LastSavedTimeStamp()
может быть, этот штамп времени подходит вам лучше
Код
Function LastInputTimeStamp() As Date
LastInputTimeStamp = Now()
End Function
и каждый раз, когда вы вводите данные в определенную ячейку (в моем примере ниже это ячейка C36), вы получите новую постоянную отметку времени.
В качестве примера в Excel файл может использовать это
=IF(C36>0,LastInputTimeStamp(),"")
Это может быть альтернативным решением. Вставьте следующий код в новый блок:
Public Function ModDate()
ModDate =
Format(FileDateTime(ThisWorkbook.FullName), "m/d/yy h:n ampm")
End Function
перед сохранением модуля обязательно сохраните файл Excel как книгу с поддержкой макросов Excel.
вставьте следующий код в ячейку, где вы хотите отобразить время последнего изменения:
=ModDate()
Я также хотел бы порекомендовать альтернативу Excel, позволяющую легко добавлять время создания и последней модификации. Не стесняйтесь проверить RowShare и эту статью я написал: https://www.rowshare.com/blog/en/2018/01/10/Displaying-Last-Modification-Time-in-Excel
нет встроенной функции с этой возможностью. Закрытие будет заключаться в сохранении файла в папке с именем текущей даты и использовании функции =INFO(«directory»).