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

Вход

Регистрация

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

 

= Мир MS Excel/Резервное копирование - Мир MS Excel

Старая форма входа
  • Страница 1 из 2
  • 1
  • 2
  • »
Модератор форума: _Boroda_, китин  
Резервное копирование
GSV_GRASEV Дата: Вторник, 16.06.2015, 11:39 | Сообщение № 1
Группа: Пользователи
Ранг: Участник
Сообщений: 60
Репутация: 0 ±
Замечаний: 40% ±

Excel 2007
Добрый день!
Нужно, чтобы в Word 97-2003.doc осуществлялось автоматическое резервное копирование(создание резервной копии)
после каждого сохранения Word-документа только для одного Word-документа, а не для всех подряд.
Возможно-ли как-то решить эту задачу?
Спасибо!
 
Ответить
СообщениеДобрый день!
Нужно, чтобы в Word 97-2003.doc осуществлялось автоматическое резервное копирование(создание резервной копии)
после каждого сохранения Word-документа только для одного Word-документа, а не для всех подряд.
Возможно-ли как-то решить эту задачу?
Спасибо!

Автор - GSV_GRASEV
Дата добавления - 16.06.2015 в 11:39
Serge_007 Дата: Вторник, 16.06.2015, 19:55 | Сообщение № 2
Группа: Админы
Ранг: Местный житель
Сообщений: 16475
Репутация: 2749 ±
Замечаний: ±

Excel 2016
Возможно-ли как-то решить эту задачу?
Конечно возможно!

В код файла, который требуется сохранять, необходимо добавить макрос, который по событию BeforeSave делает копию документа, присваивает ему уникальное имя и сохраняет в указанном месте


ЮMoney:41001419691823 | WMR:126292472390
 
Ответить
Сообщение
Возможно-ли как-то решить эту задачу?
Конечно возможно!

В код файла, который требуется сохранять, необходимо добавить макрос, который по событию BeforeSave делает копию документа, присваивает ему уникальное имя и сохраняет в указанном месте

Автор - Serge_007
Дата добавления - 16.06.2015 в 19:55
GSV_GRASEV Дата: Среда, 17.06.2015, 11:37 | Сообщение № 3
Группа: Пользователи
Ранг: Участник
Сообщений: 60
Репутация: 0 ±
Замечаний: 40% ±

Excel 2007
Serge_007, Добрый день!
Так как я не понимаю как "добавить макрос, который по событию BeforeSave делает копию",
помогите, пожалуйста это сделать - нужен, как я понимаю, текст по событию BeforeSave. Спасибо заранее.
Путь для сохранения одиночного Word-файла - D:\СПД Граб
Название Word-файла, если нужно: А
 
Ответить
СообщениеSerge_007, Добрый день!
Так как я не понимаю как "добавить макрос, который по событию BeforeSave делает копию",
помогите, пожалуйста это сделать - нужен, как я понимаю, текст по событию BeforeSave. Спасибо заранее.
Путь для сохранения одиночного Word-файла - D:\СПД Граб
Название Word-файла, если нужно: А

Автор - GSV_GRASEV
Дата добавления - 17.06.2015 в 11:37
RAN Дата: Среда, 17.06.2015, 13:29 | Сообщение № 4
Группа: Друзья
Ранг: Экселист
Сообщений: 5660
Репутация: 1163 ±
Замечаний: 0% ±

2010
[vba]
Код
Sub Save_Copy_As()
     Dim sBaseName$, sBaseNameNew$, sExtensionName$, i&
     sBaseName = Left$(ThisWorkbook.FullName, InStrRev(ThisWorkbook.FullName, ".") - 1) & "_" & Format(Date, "dd.mm.yyyy")
     sExtensionName = Mid$(ThisWorkbook.FullName, InStrRev(ThisWorkbook.FullName, "."))
     sBaseNameNew = sBaseName
     Do While Dir(sBaseNameNew & sExtensionName) <> ""
         i = i + 1
         sBaseNameNew = sBaseName & "(" & i & ")"
     Loop
     ThisWorkbook.SaveCopyAs (sBaseNameNew & sExtensionName)
End Sub

Private Sub Workbook_BeforeSave(Cancel As Boolean)
     Call Save_Copy_As
End Sub
[/vba]

Для ворда заменить ThisWorkbook на ThisDocument.

Вот только события BeforeSave в ворде нет, и чем заменить - не знаю.


Быть или не быть, вот в чем загвоздка!
 
Ответить
Сообщение[vba]
Код
Sub Save_Copy_As()
     Dim sBaseName$, sBaseNameNew$, sExtensionName$, i&
     sBaseName = Left$(ThisWorkbook.FullName, InStrRev(ThisWorkbook.FullName, ".") - 1) & "_" & Format(Date, "dd.mm.yyyy")
     sExtensionName = Mid$(ThisWorkbook.FullName, InStrRev(ThisWorkbook.FullName, "."))
     sBaseNameNew = sBaseName
     Do While Dir(sBaseNameNew & sExtensionName) <> ""
         i = i + 1
         sBaseNameNew = sBaseName & "(" & i & ")"
     Loop
     ThisWorkbook.SaveCopyAs (sBaseNameNew & sExtensionName)
End Sub

Private Sub Workbook_BeforeSave(Cancel As Boolean)
     Call Save_Copy_As
End Sub
[/vba]

Для ворда заменить ThisWorkbook на ThisDocument.

Вот только события BeforeSave в ворде нет, и чем заменить - не знаю.

Автор - RAN
Дата добавления - 17.06.2015 в 13:29
GSV_GRASEV Дата: Среда, 17.06.2015, 14:07 | Сообщение № 5
Группа: Пользователи
Ранг: Участник
Сообщений: 60
Репутация: 0 ±
Замечаний: 40% ±

Excel 2007
RAN, Добрый день!
А куда будет тут сохраняться копия документа?
Путь?
 
Ответить
СообщениеRAN, Добрый день!
А куда будет тут сохраняться копия документа?
Путь?

Автор - GSV_GRASEV
Дата добавления - 17.06.2015 в 14:07
KSV Дата: Среда, 17.06.2015, 14:46 | Сообщение № 6
Группа: Друзья
Ранг: Ветеран
Сообщений: 770
Репутация: 255 ±
Замечаний: 0% ±

Excel 2013
Вот только события BeforeSave в ворде нет

Есть. Только это событие Word.Application, а не Word.Document
(см. вложенный файл)
К сообщению приложен файл: Doc1.doc (38.5 Kb)


KSV.VBA@gmail.com
Яндекс.Деньги: 410011921213333
 
Ответить
Сообщение
Вот только события BeforeSave в ворде нет

Есть. Только это событие Word.Application, а не Word.Document
(см. вложенный файл)

Автор - KSV
Дата добавления - 17.06.2015 в 14:46
GSV_GRASEV Дата: Четверг, 18.06.2015, 14:55 | Сообщение № 7
Группа: Пользователи
Ранг: Участник
Сообщений: 60
Репутация: 0 ±
Замечаний: 40% ±

Excel 2007
KSV, Чего-то написал в прикреплённом документе и сохранил на рабочий стол,
но в СПД Граб пусто. И так делал несколько раз - открывал с рабочего стола, менял чего-то и сохранял, но в СПД Граб пусто. Результат тот же.
 
Ответить
СообщениеKSV, Чего-то написал в прикреплённом документе и сохранил на рабочий стол,
но в СПД Граб пусто. И так делал несколько раз - открывал с рабочего стола, менял чего-то и сохранял, но в СПД Граб пусто. Результат тот же.

Автор - GSV_GRASEV
Дата добавления - 18.06.2015 в 14:55
KSV Дата: Четверг, 18.06.2015, 15:35 | Сообщение № 8
Группа: Друзья
Ранг: Ветеран
Сообщений: 770
Репутация: 255 ±
Замечаний: 0% ±

Excel 2013
Чего-то написал в прикреплённом документе

Ну, надо бы знать что именно он написал...
Проверьте, существует ли у вас на диске D: папка "СПД Граб" и есть ли у вашей учетной записи (под которой вы открываете документ Word) права на создание файлов в этой папке (D:\СПД Граб\)? Путь я скопировал из вашего сообщения № 3 именно так, как он написан у вас.
Откройте файл в Word, нажмите Alt+F11 и проверьте/измените путь.
[p.s.]
менял чего-то и сохранял

не обязательно что-то менять, сохранение рез.копии будет происходить даже если документ не менялся.[/p.s.]


KSV.VBA@gmail.com
Яндекс.Деньги: 410011921213333


Сообщение отредактировал KSV - Четверг, 18.06.2015, 15:39
 
Ответить
Сообщение
Чего-то написал в прикреплённом документе

Ну, надо бы знать что именно он написал...
Проверьте, существует ли у вас на диске D: папка "СПД Граб" и есть ли у вашей учетной записи (под которой вы открываете документ Word) права на создание файлов в этой папке (D:\СПД Граб\)? Путь я скопировал из вашего сообщения № 3 именно так, как он написан у вас.
Откройте файл в Word, нажмите Alt+F11 и проверьте/измените путь.
[p.s.]
менял чего-то и сохранял

не обязательно что-то менять, сохранение рез.копии будет происходить даже если документ не менялся.[/p.s.]

Автор - KSV
Дата добавления - 18.06.2015 в 15:35
KSV Дата: Четверг, 18.06.2015, 16:53 | Сообщение № 9
Группа: Друзья
Ранг: Ветеран
Сообщений: 770
Репутация: 255 ±
Замечаний: 0% ±

Excel 2013
и замените код события DocumentBeforeSave на этот, чтобы рез. копии создавались только для текущего файла, а все остальные файлы игнорировались.
[vba]
Код
Private Sub WordApp_DocumentBeforeSave(ByVal Doc As Document, SaveAsUI As Boolean, Cancel As Boolean)
     Dim NewName$, Suffix$, i&
     NewName = Doc.Name
     If NewName <> Me.Name Then Exit Sub
     i = InStrRev(NewName, ".")
     Suffix = " (ResCopy " & Format(Now, "dd.mm.yyyy hh-mm-ss)")
     If i Then _
         NewName = Left$(NewName, i - 1) & Suffix & Mid$(NewName, i) Else _
         NewName = NewName & Suffix
     Doc.SaveAs "D:\СПД Граб\" & NewName
End Sub
[/vba]


KSV.VBA@gmail.com
Яндекс.Деньги: 410011921213333


Сообщение отредактировал KSV - Четверг, 18.06.2015, 19:05
 
Ответить
Сообщениеи замените код события DocumentBeforeSave на этот, чтобы рез. копии создавались только для текущего файла, а все остальные файлы игнорировались.
[vba]
Код
Private Sub WordApp_DocumentBeforeSave(ByVal Doc As Document, SaveAsUI As Boolean, Cancel As Boolean)
     Dim NewName$, Suffix$, i&
     NewName = Doc.Name
     If NewName <> Me.Name Then Exit Sub
     i = InStrRev(NewName, ".")
     Suffix = " (ResCopy " & Format(Now, "dd.mm.yyyy hh-mm-ss)")
     If i Then _
         NewName = Left$(NewName, i - 1) & Suffix & Mid$(NewName, i) Else _
         NewName = NewName & Suffix
     Doc.SaveAs "D:\СПД Граб\" & NewName
End Sub
[/vba]

Автор - KSV
Дата добавления - 18.06.2015 в 16:53
GSV_GRASEV Дата: Пятница, 19.06.2015, 20:35 | Сообщение № 10
Группа: Пользователи
Ранг: Участник
Сообщений: 60
Репутация: 0 ±
Замечаний: 40% ±

Excel 2007
KSV, Спасибо!
Но я ничего не понял!
 
Ответить
СообщениеKSV, Спасибо!
Но я ничего не понял!

Автор - GSV_GRASEV
Дата добавления - 19.06.2015 в 20:35
KSV Дата: Пятница, 19.06.2015, 23:39 | Сообщение № 11
Группа: Друзья
Ранг: Ветеран
Сообщений: 770
Репутация: 255 ±
Замечаний: 0% ±

Excel 2013
:D

пробуйте
К сообщению приложен файл: 6317471.doc (40.5 Kb)


KSV.VBA@gmail.com
Яндекс.Деньги: 410011921213333
 
Ответить
Сообщение:D

пробуйте

Автор - KSV
Дата добавления - 19.06.2015 в 23:39
GSV_GRASEV Дата: Суббота, 20.06.2015, 07:11 | Сообщение № 12
Группа: Пользователи
Ранг: Участник
Сообщений: 60
Репутация: 0 ±
Замечаний: 40% ±

Excel 2007
KSV, Спасибо, но не работает!
 
Ответить
СообщениеKSV, Спасибо, но не работает!

Автор - GSV_GRASEV
Дата добавления - 20.06.2015 в 07:11
KSV Дата: Суббота, 20.06.2015, 07:14 | Сообщение № 13
Группа: Друзья
Ранг: Ветеран
Сообщений: 770
Репутация: 255 ±
Замечаний: 0% ±

Excel 2013
не работает как?
скриншот ошибки прикрепите


KSV.VBA@gmail.com
Яндекс.Деньги: 410011921213333
 
Ответить
Сообщениене работает как?
скриншот ошибки прикрепите

Автор - KSV
Дата добавления - 20.06.2015 в 07:14
GSV_GRASEV Дата: Суббота, 20.06.2015, 08:36 | Сообщение № 14
Группа: Пользователи
Ранг: Участник
Сообщений: 60
Репутация: 0 ±
Замечаний: 40% ±

Excel 2007
KSV, Ошибки нет!
Всё очень просто:
скачал ваш файл, написал в нем чего-то и сохранил.
В папке СПД Граб пусто.
 
Ответить
СообщениеKSV, Ошибки нет!
Всё очень просто:
скачал ваш файл, написал в нем чего-то и сохранил.
В папке СПД Граб пусто.

Автор - GSV_GRASEV
Дата добавления - 20.06.2015 в 08:36
KSV Дата: Суббота, 20.06.2015, 12:40 | Сообщение № 15
Группа: Друзья
Ранг: Ветеран
Сообщений: 770
Репутация: 255 ±
Замечаний: 0% ±

Excel 2013
Все ясно, макросы включите! Если не знаете как, просто запустите вложенный файл и на вопрос ответьте "Да". (если у вас версия офиса не 2007, как заявлено, то сначала нужно будет открыть этот файл, например, в блокноте и изменить 12.0 на 14.0 (для офиса 2010) или на 15.0 (для офиса 2013), сохранить файл, не меняя расширение, а потом запустить уже измененный файл)

[p.s.]Если появится сообщение о блокировке содержимого, то нужно РАЗРЕШИТЬ содержимое.[/p.s.]
К сообщению приложен файл: VBAWarnings.reg (0.3 Kb)


KSV.VBA@gmail.com
Яндекс.Деньги: 410011921213333
 
Ответить
СообщениеВсе ясно, макросы включите! Если не знаете как, просто запустите вложенный файл и на вопрос ответьте "Да". (если у вас версия офиса не 2007, как заявлено, то сначала нужно будет открыть этот файл, например, в блокноте и изменить 12.0 на 14.0 (для офиса 2010) или на 15.0 (для офиса 2013), сохранить файл, не меняя расширение, а потом запустить уже измененный файл)

[p.s.]Если появится сообщение о блокировке содержимого, то нужно РАЗРЕШИТЬ содержимое.[/p.s.]

Автор - KSV
Дата добавления - 20.06.2015 в 12:40
GSV_GRASEV Дата: Суббота, 20.06.2015, 21:02 | Сообщение № 16
Группа: Пользователи
Ранг: Участник
Сообщений: 60
Репутация: 0 ±
Замечаний: 40% ±

Excel 2007
KSV, как включить макросы?
 
Ответить
СообщениеKSV, как включить макросы?

Автор - GSV_GRASEV
Дата добавления - 20.06.2015 в 21:02
KSV Дата: Суббота, 20.06.2015, 21:10 | Сообщение № 17
Группа: Друзья
Ранг: Ветеран
Сообщений: 770
Репутация: 255 ±
Замечаний: 0% ±

Excel 2013
Прочтите мое предыдущее сообщение, начиная с пятого слова :) до конца.
Если не знаете как, просто запустите вложенный файл и на вопрос ответьте "Да"


KSV.VBA@gmail.com
Яндекс.Деньги: 410011921213333
 
Ответить
СообщениеПрочтите мое предыдущее сообщение, начиная с пятого слова :) до конца.
Если не знаете как, просто запустите вложенный файл и на вопрос ответьте "Да"

Автор - KSV
Дата добавления - 20.06.2015 в 21:10
GSV_GRASEV Дата: Понедельник, 22.06.2015, 12:59 | Сообщение № 18
Группа: Пользователи
Ранг: Участник
Сообщений: 60
Репутация: 0 ±
Замечаний: 40% ±

Excel 2007
KSV, Отлично, получилось!
Только вот загвоздка -
вся процедура была только для одного вашего документа, который вы предложили, а я хотел к копированию подключить своих пару .doc - документов!
Высылаю вам эту пару.
Путь для сохранения 2-х независимых друг от друга одиночных Word-документов - D:\СПД Грабченко\Копии
К сообщению приложен файл: 2759194.doc (64.0 Kb) · 5357475.doc (35.0 Kb)
 
Ответить
СообщениеKSV, Отлично, получилось!
Только вот загвоздка -
вся процедура была только для одного вашего документа, который вы предложили, а я хотел к копированию подключить своих пару .doc - документов!
Высылаю вам эту пару.
Путь для сохранения 2-х независимых друг от друга одиночных Word-документов - D:\СПД Грабченко\Копии

Автор - GSV_GRASEV
Дата добавления - 22.06.2015 в 12:59
GSV_GRASEV Дата: Понедельник, 22.06.2015, 13:04 | Сообщение № 19
Группа: Пользователи
Ранг: Участник
Сообщений: 60
Репутация: 0 ±
Замечаний: 40% ±

Excel 2007
KSV, Название документа должно быть не 2759194, как оно отображается на форуме, а А
а название второго должно быть не 5357475, а Н
 
Ответить
СообщениеKSV, Название документа должно быть не 2759194, как оно отображается на форуме, а А
а название второго должно быть не 5357475, а Н

Автор - GSV_GRASEV
Дата добавления - 22.06.2015 в 13:04
KSV Дата: Понедельник, 22.06.2015, 14:30 | Сообщение № 20
Группа: Друзья
Ранг: Ветеран
Сообщений: 770
Репутация: 255 ±
Замечаний: 0% ±

Excel 2013
вся процедура была только для одного вашего документа

С чего вы взяли? В макросе жестко прописан только путь (который легко меняется на нужный), больше ни к чему не привязано, т.е., копируйте этот макрос в любой свой документ, меняйте путь, если надо, и все должно работать. Если указанная в пути папка не существует - она будет создана при первом же сохранении (только последний уровень).
К сообщению приложен файл: 7399728.zip (61.3 Kb)


KSV.VBA@gmail.com
Яндекс.Деньги: 410011921213333
 
Ответить
Сообщение
вся процедура была только для одного вашего документа

С чего вы взяли? В макросе жестко прописан только путь (который легко меняется на нужный), больше ни к чему не привязано, т.е., копируйте этот макрос в любой свой документ, меняйте путь, если надо, и все должно работать. Если указанная в пути папка не существует - она будет создана при первом же сохранении (только последний уровень).

Автор - KSV
Дата добавления - 22.06.2015 в 14:30
  • Страница 1 из 2
  • 1
  • 2
  • »
Поиск:

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