Выбрать дату в календареВыбрать дату в календаре

Страницы: 1
Не удаётся найти временный документ, открытый в .zip архиве
 
Ко мне обратился пользователь с проблемой: он не может найти у себя на компьютере Excel документ в который вносил изменения.

Разбор "полётов" показал шаги, которые он выполнял:
1. Excel документ был открыт из .zip архива (см. рисунок-1 и рисунок-2) и в него начал вносить изменения;
2. После завершения работы с документом, пользователь нажал Сохранить внесённые изменения в Excel (см. рисунок-3)
3. Далее он попытался закрыть .zip архив и программа его спросила о дополнительных действиях, на что он не обдуманно отказался от внесения изменений в архив (см. рисунок-4).
В итоге, работа за целый день в .zip архив не попала.

В подобных случаях при работе с документами, которые открыты из архива на локальном диске создаётся временная копия в папке Temp по следующему пути:
Код
C:\Users\Имя_Пользователя\AppData\Local\Temp\Название_Временной_Папки\excel_документ.xlsx
Когда Excel документ закрывается, временная папка удаляется вместе с excel документом в который были внесены изменения.

Для восстановления удалённых файлов есть программа R-Studio, с помощью которой я принялся искать удалённые файлы. Однако, к моему большому удивлению, я не смог найти этот временный excel документ.

Я решил повторить шаги пользователя, чтобы убедиться: программа R-Studio должна видеть и восстанавливать временные документы, которые автоматически удаляются после сохранения. Как оказалось, я был прав - программа действительно увидела временный файл, созданный мною и который был автоматически удалён excel когда я закончил с ним работать. После чего мне удалось восстановить документ.
Но проблема заключается в том, что я не могу в папке Temp найти временный файл с которым работал пользователь и, как следствие, восстановить его.

Возможно, я не там ищу? Мне бы только знать где искать временный файл!
Заранее всем спасибо за ответы.

Файлы удалены: превышение дпустимого размера вложения [МОДЕРАТОР]
Изменено: mistori - 10.11.2015 15:03:38
Помогите усовершенствовать код автоматической вставки даты
 
Господа, у меня имеется следующий код, которые автоматически вставляет дату при заполнении определенных ячеек в 3-х столбцах.

Код
Private Sub Worksheet_Change(ByVal Target As Range)

 If Target.Cells.Count > 1 Then Exit Sub 'проходим по всем измененным ячейкам
 If Not Intersect(Target, Range("J5:J1000" ;) ) Is Nothing Then 'если изменененная ячейка попадает в диапазон
 With Target(1, 2) 'вводим в соседнюю справа ячейку дату
 .Value = Now 'вместо этого параметра можно написать Date
 .EntireColumn.AutoFit 'выполняем автоподбор ширины для столбца, чтобы дата умещалась в ячейке
 End With
 End If

 If Target.Cells.Count > 1 Then Exit Sub
 If Not Intersect(Target, Range("O5  :o  1000" ;) ) Is Nothing Then
 With Target(1, 2)
 .Value = Now
 .EntireColumn.AutoFit
 End With
 End If
 
 If Target.Cells.Count > 1 Then Exit Sub
 If Not Intersect(Target, Range("R5:R1000" ;) ) Is Nothing Then
 With Target(1, 2)
 .Value = Now
 .EntireColumn.AutoFit
 End With
 End If

End Sub

Мне нужна ваша помощь в модернизации кода:

1) Что необходимо написать, чтобы при нажатии Del или "Очистить ячейку" не вставлялась дата?

2) При выполнении выше написанного когда происходит какое-то зацикливание/торможение на листе, когда вставляются новые столбцы или колонки. Где-то на форумах читал, что рекомендуют вставлять следующие строки:

Код
Application.EnableEvents = False
Application.EnableEvents = True

Вот только я не понимаю их назначение и куда их необходимо вставлять.

3) Может еще что-то порекомендуете добавить для улучшения/ускорения работы?

Заранее всем спасибо за ответы.
Изменено: mistori - 27.02.2013 01:42:48
Страницы: 1
Наверх