Excel, нужен макрос натравливаемый на папку с файлами экселя.

  • Автор темы Автор темы George
  • Дата начала Дата начала
Статус
Закрыто для дальнейших ответов.

George

I wish I was a monster you think I am
Топикстартер
15 лет на форуме
Сообщения
17 519
Реакции
7 925
Кто может сделать?

Исходные данные: Есть папка с файлами экселя. Эти файлы друг с другом связаны формулами.

Необходимо: Открыть все файлы в папке, "сохранить как" в другую определённую папку эти файлы, при этом формулы должны быть замещены значениями, а сами файлы(каждый из вновь создаваемых) должны иметь определённый пароль на открытие файла.

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

Заранее спасибо.
 
Ответ: Excel, нужен макрос натравливаемый на папку с файлами экселя.

Это можно сделать не выходя из экселя.
Папки исходника и назначения фиксированные? Включая подкаталоги?
 
Ответ: Excel, нужен макрос натравливаемый на папку с файлами экселя.

Папки исходника и назначения фиксированные?
Да, неизменны.
 
Ответ: Excel, нужен макрос натравливаемый на папку с файлами экселя.

Пароли должны быть на открытие и редактирование? Одинаковые для всех?
 
Ответ: Excel, нужен макрос натравливаемый на папку с файлами экселя.

Редактирование запрещено, разрешен только просмотр. Пароли разные для каждого файла(случайные).
 
Ответ: Excel, нужен макрос натравливаемый на папку с файлами экселя.

Насколько случайные? Их куда-то выдавать еще для контроля? И как все-таки с подпапками - все файлы в одной или есть вложения?
 
Ответ: Excel, нужен макрос натравливаемый на папку с файлами экселя.

Их куда-то выдавать еще для контроля?
1. Ну конечно я должен их(пароли) знать. Они будут выданы людям, которым разрешено их смотреть.
2. Все файлы в одну другую папку просто дубликаты(пусть папка будет иметь имя "Без формул" или "Для workspace"), но без формул, а со значениями.
 
Ответ: Excel, нужен макрос натравливаемый на папку с файлами экселя.

2. Все файлы в одну другую папку просто дубликаты(пусть папка будет иметь имя "Без формул" или "Для workspace"), но без формул, а со значениями.
Это я понял. В исходной папке подпапок, по которым рекурсивно искать надо, не будет?
 
Ответ: Excel, нужен макрос натравливаемый на папку с файлами экселя.

В исходной папке подпапок, по которым рекурсивно искать надо, не будет?
Нет. Но сам смысл, что задача не должна зависеть от имен исходных файлов(то есть если есть в папке файл, то надо его сдублировать). Папок под эту задачу может быть несколько. И в каждой отдельной папке можно будет запустить этот макрос.
Ещё желательно иметь функцию "автовыполнения" макроса по расписанию(желательно, но не обязательно).
 
Ответ: Excel, нужен макрос натравливаемый на папку с файлами экселя.

Папок под эту задачу может быть несколько. И в каждой отдельной папке можно будет запустить этот макрос.
То есть, при запуске макрос спрашивает имя исходной и результирующей папок?
 
Ответ: Excel, нужен макрос натравливаемый на папку с файлами экселя.

Можно и так. Но по-моему проще, когда макрос лежит в исходной папке - его запускаешь и он делает своё дело(создаёт внутри исходной папки или в корне исходной папки папку дубликатов файлов без формул).
 
Ответ: Excel, нужен макрос натравливаемый на папку с файлами экселя.

Но по-моему проще, когда макрос лежит в исходной папке - его запускаешь и он делает своё дело(создаёт внутри исходной папки или в корне исходной папки папку дубликатов файлов без формул).
Ну хорошо мне так даже проще. Список паролей в текстовый файл туда же?
 
Ответ: Excel, нужен макрос натравливаемый на папку с файлами экселя.

Папок под эту задачу может быть несколько. И в каждой отдельной папке можно будет запустить этот макрос.
Это уже интересней.
Привязка макроса к папке сомнительна, либо передавать имя папки для вывода.
Либо делать все в одном месте, настраивая список входящих папок, список папок для вывода, пароли и соответственно галочку активности.
Можно сделать в экселе, можно на чем-нить посложнее и опять же либо через OLE или просто используя дополнения для чтения экселевских файлов.
За первый вариант могу взяться, правда по срокам ничего не могу обещать. Функция автовыполнения есть в винде "at", её достаточно для большинства практических целей.
 
Ответ: Excel, нужен макрос натравливаемый на папку с файлами экселя.

Список паролей в текстовый файл туда же?
Пароль должен быть хоть и из случайных символов, но должен быть одним и тем же для определённого файла после второй, третьей и т.д. операции дублирования(а то задолбишься людям пароли новые раздавать). Файлы-дубликаты получается будут на себя же сверху писаться, когда нужно будет после изменения файла "синхронизировать" заново дубликат макросом.
Туда же список паролей не надо. Можно в исходную папку или в др. место.

Привязка макроса к папке сомнительна, либо передавать имя папки для вывода.
Так я и говорю, что не нужна привязка к именам. Запустил макрос в папке с файлами экселя(любой папке) и получил др.папку с этими файлами, но без формул.


Функция автовыполнения есть в винде "at", её достаточно для большинства практических целей.
Объясните, пожалуйста, где это. "Планировщик заданий" - оно?
 
Ответ: Excel, нужен макрос натравливаемый на папку с файлами экселя.

Пароль должен быть хоть и из случайных символов, но должен быть одним и тем же после второй, третьей и т.д. операции дублирования(а то задолбишься людям пароли новые раздавать).
Вот этот момент совсем не понял. Какая ж тут случайность, когда пароли всегда будут одни и те же? К тому же непонятно, как тогда пароль от файла должен зависеть будет? Мне кажется, это что-то не то.
 
Ответ: Excel, нужен макрос натравливаемый на папку с файлами экселя.

На выходе будут школьные документы, точнее - дневники учеников, чтобы сам ученик мог посмотреть расписание занятий или родители оценки своего чада. Для каждого дневника должен быть свой пароль. Если каждый раз будет новый пароль после выставления оценки ученику, то это сильно усложнит задачу. Не отсылать же каждый раз новый пароль смской? То есть Файл "Сидоров_9А_дневник.xlsx" должен иметь только свой пароль, сколько раз бы он не перезаписывался макросом.

Да уж, задача не такая уж и простая вышла...
 
Ответ: Excel, нужен макрос натравливаемый на папку с файлами экселя.

То есть Файл "Сидоров_9А_дневник.xlsx" должен иметь только свой пароль, сколько раз бы он не перезаписывался макросом.
Ну то есть, как я и говорил, пароль зависит от имени файла?
 
Ответ: Excel, нужен макрос натравливаемый на папку с файлами экселя.

Ну с паролями тогда проще, это можно сделать хеш-функцию от имени. Только тогда ограничение что пароли нельзя менять и задавать вручную. Для внутреннего просмотровщика защищенность достаточная, но если кто угодно может скачать файлы, то подобрать пароль ко всем файлам можно элементарно...
А нормальную выдачу через HTML сложно организовать?
 
Ответ: Excel, нужен макрос натравливаемый на папку с файлами экселя.

А нормальную выдачу через HTML сложно организовать?
Не понимает система документооборота связи между файлами(то есть ссылки в формулах на значения в других файлах экселя), там будет страничка в ней класса, где будут дневники приаттачены. Потому и такая задача с заменой формул на значения. Плюс ко всему не нужно родителям видеть файлы журналов класса и т.д. из которых формируются дневники - это файлы для учителей.


Ну с паролями тогда проще, это можно сделать хеш-функцию от имени. Только тогда ограничение что пароли нельзя менять и задавать вручную.
На данном этапе не нужно так усложнять задачу. Достаточно, что они будут какие-то фиксированные, и чтобы мама/папа/сын/дочь знали пароль своего дневника.


но если кто угодно может скачать файлы
Только те, чей логин и пароль к СЭД позволяет зайти на страницы с дневниками. ИМХО достаточная защищённость.
 
Статус
Закрыто для дальнейших ответов.