Домашняя страница Undo Do New Save Карта сайта Обратная связь Поиск по форуму
МИР MS EXCEL - Гость.xls

Вход

Регистрация

Напомнить пароль

 

= Мир MS Excel/Макрос для сохранения файла с прежней датой - Мир MS Excel

Старая форма входа
  • Страница 1 из 2
  • 1
  • 2
  • »
Модератор форума: китин, _Boroda_  
Макрос для сохранения файла с прежней датой
Гость11 Дата: Пятница, 28.01.2011, 14:01 | Сообщение № 1
Группа: Гости
Помогите создать макрос, который сохранял файл EXCEL с датой и временем до открытия и изменения файла.
Я не понимаю какие нарушения были в предыдушей теме с моей стороны.
Обяснения которые запрашивал Саня (ТОЛЬКО БЕЗ ОБИД)
Имеется какой-то файл на диске с датой и временем (прописаных в свойствах файла например - 21.11.2010 в 11:02 - в это время он когда-то редактировался (создавался)и сохранился) теперь, я его открываю СЕГОДНЯ - (дата 28 января 2011 года допустив время сейчас 13:53) вношу пару изменений в данные какой-то строки и нажимаю кнопку СОХРАНИТЬ на панели. Файл сохраняется с датой и временем 28.01.2011 и время 13:57, а мне надо чтобы он сохранился со временем и датой предыдущего сохранения т.е. 21.11.2010 в 11:02.
По моему я объяснил БОЛЕЕ подробно что НАДО.
 
Ответить
СообщениеПомогите создать макрос, который сохранял файл EXCEL с датой и временем до открытия и изменения файла.
Я не понимаю какие нарушения были в предыдушей теме с моей стороны.
Обяснения которые запрашивал Саня (ТОЛЬКО БЕЗ ОБИД)
Имеется какой-то файл на диске с датой и временем (прописаных в свойствах файла например - 21.11.2010 в 11:02 - в это время он когда-то редактировался (создавался)и сохранился) теперь, я его открываю СЕГОДНЯ - (дата 28 января 2011 года допустив время сейчас 13:53) вношу пару изменений в данные какой-то строки и нажимаю кнопку СОХРАНИТЬ на панели. Файл сохраняется с датой и временем 28.01.2011 и время 13:57, а мне надо чтобы он сохранился со временем и датой предыдущего сохранения т.е. 21.11.2010 в 11:02.
По моему я объяснил БОЛЕЕ подробно что НАДО.

Автор - Гость11
Дата добавления - 28.01.2011 в 14:01
Саня Дата: Пятница, 28.01.2011, 14:18 | Сообщение № 2
Группа: Друзья
Ранг: Ветеран
Сообщений: 1068
Репутация: 560 ±
Замечаний: 0% ±

XL 2016
теперь да (просто дата, время может быть в ячейке, в названии, в комментарии, в ...)
чё, хочешь руководителя дураком выставить? smile

можно это залепить, меняя системные дату и время перед сохранением и откатывая их назад после, но для этого могут понадобится права

 
Ответить
Сообщениетеперь да (просто дата, время может быть в ячейке, в названии, в комментарии, в ...)
чё, хочешь руководителя дураком выставить? smile

можно это залепить, меняя системные дату и время перед сохранением и откатывая их назад после, но для этого могут понадобится права


Автор - Саня
Дата добавления - 28.01.2011 в 14:18
Serge_007 Дата: Пятница, 28.01.2011, 14:19 | Сообщение № 3
Группа: Админы
Ранг: Местный житель
Сообщений: 16475
Репутация: 2749 ±
Замечаний: ±

Excel 2016
Quote (Гость11)
Я не понимаю какие нарушения были в предыдушей теме с моей стороны.
Название темы.


ЮMoney:41001419691823 | WMR:126292472390
 
Ответить
Сообщение
Quote (Гость11)
Я не понимаю какие нарушения были в предыдушей теме с моей стороны.
Название темы.

Автор - Serge_007
Дата добавления - 28.01.2011 в 14:19
Гость11 Дата: Пятница, 28.01.2011, 14:24 | Сообщение № 4
Группа: Гости
Такой способ известен и не подходит (очень много файлов с разными датами) порядка 2тыс. Просто умрЁшь их так сохранять.
Надо макросом.
 
Ответить
СообщениеТакой способ известен и не подходит (очень много файлов с разными датами) порядка 2тыс. Просто умрЁшь их так сохранять.
Надо макросом.

Автор - Гость11
Дата добавления - 28.01.2011 в 14:24
Serge_007 Дата: Пятница, 28.01.2011, 14:26 | Сообщение № 5
Группа: Админы
Ранг: Местный житель
Сообщений: 16475
Репутация: 2749 ±
Замечаний: ±

Excel 2016
Саня и предлагает это сделать макросом smile
Сам жду решения, интересно :)))


ЮMoney:41001419691823 | WMR:126292472390
 
Ответить
СообщениеСаня и предлагает это сделать макросом smile
Сам жду решения, интересно :)))

Автор - Serge_007
Дата добавления - 28.01.2011 в 14:26
Гость11 Дата: Пятница, 28.01.2011, 14:42 | Сообщение № 6
Группа: Гости
Да и только макросом
Ждем
 
Ответить
СообщениеДа и только макросом
Ждем

Автор - Гость11
Дата добавления - 28.01.2011 в 14:42
Гость11 Дата: Пятница, 28.01.2011, 14:45 | Сообщение № 7
Группа: Гости
Я предполагал что считыванием даты с предыдуших свойств и вставкой в новые свойства.
Или так не бывает?
 
Ответить
СообщениеЯ предполагал что считыванием даты с предыдуших свойств и вставкой в новые свойства.
Или так не бывает?

Автор - Гость11
Дата добавления - 28.01.2011 в 14:45
Саня Дата: Пятница, 28.01.2011, 15:23 | Сообщение № 8
Группа: Друзья
Ранг: Ветеран
Сообщений: 1068
Репутация: 560 ±
Замечаний: 0% ±

XL 2016
щас времени нет и сегодня я уезжаю (неделю готов ждать?)
самое сложное здесь, как сейчас это видится, - это считать св-во файла "Изменен" - сдается мне, что без API не обойтись...
 
Ответить
Сообщениещас времени нет и сегодня я уезжаю (неделю готов ждать?)
самое сложное здесь, как сейчас это видится, - это считать св-во файла "Изменен" - сдается мне, что без API не обойтись...

Автор - Саня
Дата добавления - 28.01.2011 в 15:23
Alex_ST Дата: Пятница, 28.01.2011, 16:09 | Сообщение № 9
Группа: Друзья
Ранг: Участник клуба
Сообщений: 3213
Репутация: 609 ±
Замечаний: 0% ±

2003
Quote (Гость11)
считыванием даты с предыдуших свойств и вставкой в новые свойства

это стандартными методами Виндов сделать никак нельзя.
А как предлагает Саня - вполне реально.



С уважением,
Алексей
MS Excel 2003 - the best!!!
 
Ответить
Сообщение
Quote (Гость11)
считыванием даты с предыдуших свойств и вставкой в новые свойства

это стандартными методами Виндов сделать никак нельзя.
А как предлагает Саня - вполне реально.

Автор - Alex_ST
Дата добавления - 28.01.2011 в 16:09
Саня Дата: Пятница, 28.01.2011, 16:42 | Сообщение № 10
Группа: Друзья
Ранг: Ветеран
Сообщений: 1068
Репутация: 560 ±
Замечаний: 0% ±

XL 2016
не могу не поделиться той радостью, которая меня постигла после нарытия части решения этой проблемы
[vba]
Код
Option Explicit
Public Const GENERIC_READ = &H80000000
Public Const FILE_SHARE_READ = &H1
Public Const OPEN_EXISTING = 3
Public Const FILE_ATTRIBUTE_ARCHIVE = &H20

Type SYSTEMTIME
     wYear As Integer
     wMonth As Integer
     wDayOfWeek As Integer
     wDay As Integer
     wHour As Integer
     wMinute As Integer
     wSecond As Integer
     wMilliseconds As Integer
End Type

Type FILETIME
     dwLowDateTime As Long
     dwHighDateTime As Long
End Type

Declare Function CreateFile Lib "kernel32.dll" Alias "CreateFileA" ( _
                    ByVal lpFileName As String, _
                    ByVal dwDesiredAccess As Long, _
                    ByVal dwShareMode As Long, _
                    lpSecurityAttributes As Any, _
                    ByVal dwCreationDisposition As Long, _
                    ByVal dwFlagsAndAttributes As Long, _
                    ByVal hTemplateFile As Long) As Long

Declare Function GetFileTime Lib "kernel32" ( _
                     ByVal hFile As Long, _
                     lpCreationTime As FILETIME, _
                     lpLastAccessTime As FILETIME, _
                     lpLastWriteTime As FILETIME) As Long

Declare Function FileTimeToLocalFileTime Lib "kernel32.dll" ( _
                     lpFileTime As FILETIME, _
                     lpLocalFileTime As FILETIME) As Long

Declare Function FileTimeToSystemTime Lib "kernel32.dll" ( _
                     lpFileTime As FILETIME, _
                     lpSystemTime As SYSTEMTIME) As Long

Declare Function CloseHandle Lib "kernel32.dll" ( _
                     ByVal hObject As Long) As Long

Sub a()
     ' Display the date on which the file C:\MyApp\test.txt was
     ' created.  Note how the time zone conversion is necessary.
     Dim hFile As Long  ' handle to the opened file
     Dim cTime As FILETIME  ' receives time of creation
     Dim aTime As FILETIME  ' receives time of last access
     Dim mTime As FILETIME  ' receives time of last modification
     Dim theTime As SYSTEMTIME  ' used to manipulate the time
     Dim retval As Long  ' return value

     ' First, open the file C:\MyApp\test.txt for read-level access.  Note the
     ' expression necessary to pass 0 as lpSecurityAttributes.
     hFile = CreateFile("C:\MyApp\test.txt", _
                        GENERIC_READ, _
                        FILE_SHARE_READ, _
                        ByVal CLng(0), _
                        OPEN_EXISTING, _
                        FILE_ATTRIBUTE_ARCHIVE, 0)
     If hFile = -1 Then
        Debug.Print "Could not open the file successfully -- aborting."
        End  ' terminate the program
     End If

     ' Next, get the creation, last-access, and last-modification times.
     retval = GetFileTime(hFile, cTime, aTime, mTime)
     ' Convert the last-modification time to the local time zone.
     retval = FileTimeToLocalFileTime(mTime, mTime)
     ' Convert the FILETIME format to the SYSTEMTIME format.
     retval = FileTimeToSystemTime(mTime, theTime)

     ' Display the date of last-modification of the file to the user.
     With theTime
        Debug.Print "m "; .wDay & "." & .wMonth & "." & .wYear, _
                    .wHour & ":" & .wMinute & ":" & .wSecond

     End With

     ' Close the file to free up resources.
     retval = CloseHandle(hFile)
End Sub
[/vba]

остальное там элементарно должно быть, может кто добьет...
 
Ответить
Сообщениене могу не поделиться той радостью, которая меня постигла после нарытия части решения этой проблемы
[vba]
Код
Option Explicit
Public Const GENERIC_READ = &H80000000
Public Const FILE_SHARE_READ = &H1
Public Const OPEN_EXISTING = 3
Public Const FILE_ATTRIBUTE_ARCHIVE = &H20

Type SYSTEMTIME
     wYear As Integer
     wMonth As Integer
     wDayOfWeek As Integer
     wDay As Integer
     wHour As Integer
     wMinute As Integer
     wSecond As Integer
     wMilliseconds As Integer
End Type

Type FILETIME
     dwLowDateTime As Long
     dwHighDateTime As Long
End Type

Declare Function CreateFile Lib "kernel32.dll" Alias "CreateFileA" ( _
                    ByVal lpFileName As String, _
                    ByVal dwDesiredAccess As Long, _
                    ByVal dwShareMode As Long, _
                    lpSecurityAttributes As Any, _
                    ByVal dwCreationDisposition As Long, _
                    ByVal dwFlagsAndAttributes As Long, _
                    ByVal hTemplateFile As Long) As Long

Declare Function GetFileTime Lib "kernel32" ( _
                     ByVal hFile As Long, _
                     lpCreationTime As FILETIME, _
                     lpLastAccessTime As FILETIME, _
                     lpLastWriteTime As FILETIME) As Long

Declare Function FileTimeToLocalFileTime Lib "kernel32.dll" ( _
                     lpFileTime As FILETIME, _
                     lpLocalFileTime As FILETIME) As Long

Declare Function FileTimeToSystemTime Lib "kernel32.dll" ( _
                     lpFileTime As FILETIME, _
                     lpSystemTime As SYSTEMTIME) As Long

Declare Function CloseHandle Lib "kernel32.dll" ( _
                     ByVal hObject As Long) As Long

Sub a()
     ' Display the date on which the file C:\MyApp\test.txt was
     ' created.  Note how the time zone conversion is necessary.
     Dim hFile As Long  ' handle to the opened file
     Dim cTime As FILETIME  ' receives time of creation
     Dim aTime As FILETIME  ' receives time of last access
     Dim mTime As FILETIME  ' receives time of last modification
     Dim theTime As SYSTEMTIME  ' used to manipulate the time
     Dim retval As Long  ' return value

     ' First, open the file C:\MyApp\test.txt for read-level access.  Note the
     ' expression necessary to pass 0 as lpSecurityAttributes.
     hFile = CreateFile("C:\MyApp\test.txt", _
                        GENERIC_READ, _
                        FILE_SHARE_READ, _
                        ByVal CLng(0), _
                        OPEN_EXISTING, _
                        FILE_ATTRIBUTE_ARCHIVE, 0)
     If hFile = -1 Then
        Debug.Print "Could not open the file successfully -- aborting."
        End  ' terminate the program
     End If

     ' Next, get the creation, last-access, and last-modification times.
     retval = GetFileTime(hFile, cTime, aTime, mTime)
     ' Convert the last-modification time to the local time zone.
     retval = FileTimeToLocalFileTime(mTime, mTime)
     ' Convert the FILETIME format to the SYSTEMTIME format.
     retval = FileTimeToSystemTime(mTime, theTime)

     ' Display the date of last-modification of the file to the user.
     With theTime
        Debug.Print "m "; .wDay & "." & .wMonth & "." & .wYear, _
                    .wHour & ":" & .wMinute & ":" & .wSecond

     End With

     ' Close the file to free up resources.
     retval = CloseHandle(hFile)
End Sub
[/vba]

остальное там элементарно должно быть, может кто добьет...

Автор - Саня
Дата добавления - 28.01.2011 в 16:42
Alex_ST Дата: Пятница, 28.01.2011, 21:04 | Сообщение № 11
Группа: Друзья
Ранг: Участник клуба
Сообщений: 3213
Репутация: 609 ±
Замечаний: 0% ±

2003
Quote (Микеланджело)
остальное там элементарно должно быть, может кто добьет...

eek hands lol

Нет уж, Саня, сказал А, говори и Б. Такой класс программирования мало кому кроме тебя и ещё нескольких "Планетян" в "Миру" доступен.
Ну, в общем, "Назвался клизмой, полезай ..." biggrin




С уважением,
Алексей
MS Excel 2003 - the best!!!
 
Ответить
Сообщение
Quote (Микеланджело)
остальное там элементарно должно быть, может кто добьет...

eek hands lol

Нет уж, Саня, сказал А, говори и Б. Такой класс программирования мало кому кроме тебя и ещё нескольких "Планетян" в "Миру" доступен.
Ну, в общем, "Назвался клизмой, полезай ..." biggrin


Автор - Alex_ST
Дата добавления - 28.01.2011 в 21:04
Гость11 Дата: Понедельник, 31.01.2011, 11:40 | Сообщение № 12
Группа: Гости
Добрый день.
Спасибо, уже есть кое что.
Как это прменить, правда пока не понял. Жду Саня.
 
Ответить
СообщениеДобрый день.
Спасибо, уже есть кое что.
Как это прменить, правда пока не понял. Жду Саня.

Автор - Гость11
Дата добавления - 31.01.2011 в 11:40
Саня Дата: Среда, 02.02.2011, 11:03 | Сообщение № 13
Группа: Друзья
Ранг: Ветеран
Сообщений: 1068
Репутация: 560 ±
Замечаний: 0% ±

XL 2016
возник один вопрос - для чего тебе понадобилось скрывать время изменения файла, причем еще программным образом, а?
 
Ответить
Сообщениевозник один вопрос - для чего тебе понадобилось скрывать время изменения файла, причем еще программным образом, а?

Автор - Саня
Дата добавления - 02.02.2011 в 11:03
Гость11 Дата: Среда, 02.02.2011, 12:42 | Сообщение № 14
Группа: Гости
Есть потребность
 
Ответить
СообщениеЕсть потребность

Автор - Гость11
Дата добавления - 02.02.2011 в 12:42
Serge_007 Дата: Среда, 02.02.2011, 12:46 | Сообщение № 15
Группа: Админы
Ранг: Местный житель
Сообщений: 16475
Репутация: 2749 ±
Замечаний: ±

Excel 2016
Это не ответ.
Ни на одном нормальном форуме Вам не будут помогать делать противоправные действия.
У нас это тоже запрещено.
Либо Вы внятно объясняете для чего это необходимо, либо я закрываю эту тему.


ЮMoney:41001419691823 | WMR:126292472390
 
Ответить
СообщениеЭто не ответ.
Ни на одном нормальном форуме Вам не будут помогать делать противоправные действия.
У нас это тоже запрещено.
Либо Вы внятно объясняете для чего это необходимо, либо я закрываю эту тему.

Автор - Serge_007
Дата добавления - 02.02.2011 в 12:46
Саня Дата: Среда, 02.02.2011, 12:49 | Сообщение № 16
Группа: Друзья
Ранг: Ветеран
Сообщений: 1068
Репутация: 560 ±
Замечаний: 0% ±

XL 2016
biggrin
ответ хорош!

но он не правильный, потрудись пояснить свою потребность, а то есть мнение, что все это не во благо...

 
Ответить
Сообщениеbiggrin
ответ хорош!

но он не правильный, потрудись пояснить свою потребность, а то есть мнение, что все это не во благо...


Автор - Саня
Дата добавления - 02.02.2011 в 12:49
Alex_ST Дата: Среда, 02.02.2011, 13:10 | Сообщение № 17
Группа: Друзья
Ранг: Участник клуба
Сообщений: 3213
Репутация: 609 ±
Замечаний: 0% ±

2003
Мужики, ну ведь все уже давно догадались, что ни для чего легального Гость11 использовать код не собирается ...
Ну и пусть ищет дураков на "Поле Чудес" у Якубовича.
А здесь ему в баню, кажется, пора



С уважением,
Алексей
MS Excel 2003 - the best!!!


Сообщение отредактировал Alex_ST - Среда, 02.02.2011, 13:10
 
Ответить
СообщениеМужики, ну ведь все уже давно догадались, что ни для чего легального Гость11 использовать код не собирается ...
Ну и пусть ищет дураков на "Поле Чудес" у Якубовича.
А здесь ему в баню, кажется, пора

Автор - Alex_ST
Дата добавления - 02.02.2011 в 13:10
Serge_007 Дата: Среда, 02.02.2011, 13:24 | Сообщение № 18
Группа: Админы
Ранг: Местный житель
Сообщений: 16475
Репутация: 2749 ±
Замечаний: ±

Excel 2016
Quote (Alex_ST)
А здесь ему в баню, кажется, пора

Алекс, не торопись. Дай ТС ответить. Ждём.


ЮMoney:41001419691823 | WMR:126292472390
 
Ответить
Сообщение
Quote (Alex_ST)
А здесь ему в баню, кажется, пора

Алекс, не торопись. Дай ТС ответить. Ждём.

Автор - Serge_007
Дата добавления - 02.02.2011 в 13:24
Саня Дата: Среда, 02.02.2011, 13:53 | Сообщение № 19
Группа: Друзья
Ранг: Ветеран
Сообщений: 1068
Репутация: 560 ±
Замечаний: 0% ±

XL 2016
Quote (Alex_ST)
Нет уж, Саня, сказал А, говори и Б. Такой класс программирования мало кому кроме тебя и ещё нескольких "Планетян" в "Миру" доступен.
Ну, в общем, "Назвался клизмой, полезай ..." biggrin

я эту тему обязательно доделаю, мне это тоже было нужно.
 
Ответить
Сообщение
Quote (Alex_ST)
Нет уж, Саня, сказал А, говори и Б. Такой класс программирования мало кому кроме тебя и ещё нескольких "Планетян" в "Миру" доступен.
Ну, в общем, "Назвался клизмой, полезай ..." biggrin

я эту тему обязательно доделаю, мне это тоже было нужно.

Автор - Саня
Дата добавления - 02.02.2011 в 13:53
KuklP Дата: Среда, 02.02.2011, 15:52 | Сообщение № 20
Группа: Проверенные
Ранг: Старожил
Сообщений: 2369
Репутация: 486 ±
Замечаний: 0% ±

2003-2010
Quote (Serge_007)
Алекс, не торопись. Дай ТС ответить. Ждём.
Серж, как уже написал Леша
Quote (Alex_ST)
ни для чего легального Гость11 использовать код не собирается
Ты сам-то попробуй придумать, для чего тебе понадобилось бы менять дату у 2000 файлов. Ему самая дорога на форум вирусописателей. И молодцы Лешка и Саня, что вовремя остановились.


Ну с НДС и мы чего-то стoим! kuklp60@gmail.com
WM Z206653985942, R334086032478, U238399322728
 
Ответить
Сообщение
Quote (Serge_007)
Алекс, не торопись. Дай ТС ответить. Ждём.
Серж, как уже написал Леша
Quote (Alex_ST)
ни для чего легального Гость11 использовать код не собирается
Ты сам-то попробуй придумать, для чего тебе понадобилось бы менять дату у 2000 файлов. Ему самая дорога на форум вирусописателей. И молодцы Лешка и Саня, что вовремя остановились.

Автор - KuklP
Дата добавления - 02.02.2011 в 15:52
  • Страница 1 из 2
  • 1
  • 2
  • »
Поиск:

Яндекс.Метрика Яндекс цитирования
© 2010-2024 · Дизайн: MichaelCH · Хостинг от uCoz · При использовании материалов сайта, ссылка на www.excelworld.ru обязательна!