Страницы: 1
RSS
Сохранение реестра открытых файлов с последующей возможностью их открытия
 
Здравствуйте.
Можно ли реализовать следующую опцию:
Есть n-ное количество открытых файлов, с которыми нужно поработать через некоторое время (на следующий день). Пользователь сохраняет и закрывает эти файлы. В начале очередной рабочей сессии их нужно найти на ПК и последовательно открыть. Таких рабочих сетов может быть несколько, и файлы могут в них пересекаться (то есть быть в одном или нескольких наборах).

Хочется иметь несколько команд:
  • Сохранить набор. Сохраняет набор открытых файлов в отдельный текстовый файл. Этот набор можно, соответственно редактировать блокнотом (прописывать другие пути и т.д.).
  • Открыть набор: Открывает предварительно созданный/отредактированный/сохраненный набор файлов.
Думаю, идея должна быть многим интересна
 
Реализовать то можно, только
Цитата
lobaty написал:
Думаю, идея должна быть многим интересна
Это будет интересно только Вам
Спасибо
 
Логика примерно такая:
1. Пишем в реестр путь к папке хранения текстового файла
2. Создаем в личной книге макросов код на запись/чтение путей всех нужных файлов
Сохранение:
1. читаем из реестра путь к файлу
2. Выбираем имя для сохранения набора
3. Пишем пути к файлам структурой, например json или своей типа ключ:{массив значений}
Чтение :
1. читаем из реестра путь к файлу
2. Определяем какой набор файлов открыть
3. Проверяем все ли файлы на месте
4.Открываем.
-----------------------------------------------------------------------------------------------
Сделать все это не проблема, но задача совсем не интересная.....
Спасибо
 
Цитата
lobaty написал:
Этот набор можно, соответственно редактировать блокнотом (прописывать другие пути и т.д.).
Для чего тогда отслеживать? :)
 
Цитата
lobaty написал:
Думаю, идея должна быть многим интересна
Не обольщайтесь.  :)
Пользуйтесь
Код
Sub qq()
    Dim wb As Workbook, txt$, s$
    For Each wb In Workbooks
        txt = txt & "|" & wb.FullName
    Next
    txt = Mid$(txt, 2)
    s = "txt = " & """" & txt & """" & vbCrLf
    s = s & "spl = Split(txt, ""|"")" & vbCrLf
    s = s & "With CreateObject(""Excel.Application"")" & vbCrLf
    s = s & ".Visible = True" & vbCrLf
    s = s & "For Each x In spl" & vbCrLf
    s = s & ".Workbooks.Open x,True" & vbCrLf
    s = s & "Next" & vbCrLf
    s = s & "End With" & vbCrLf
    With CreateObject("Scripting.FileSystemObject").CreateTextFile("D:\OldFiles.vbs", True)
        .Write s
        .Close
    End With
End Sub
 
Это уже было.  :)  
Изменено: sokol92 - 08.05.2021 14:07:00
Владимир
 
Есть встроенный функционал: Вид-Сохранить рабочую область. При открытии сохраненного файла области откроются все файлы, если конечно их не удалили/не переместили.
Неизлечимых болезней нет, есть неизлечимые люди.
 
RAN, это прекрасно!
спасибо Вам)
 
Цитата
TheBestOfTheBest написал:
Есть встроенный функционал: Вид-Сохранить рабочую область.
Был - в последних версиях убрали...
Владимир
 
Большое спасибо всем
Страницы: 1
Наверх