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

Вход

Регистрация

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

 

= Мир MS Excel/Написать макрос за рубли. - Мир MS Excel

Старая форма входа
  • Страница 1 из 2
  • 1
  • 2
  • »
Модератор форума: китин  
Написать макрос за рубли.
easy_employer Дата: Вторник, 24.12.2013, 15:59 | Сообщение № 1
Группа: Пользователи
Ранг: Прохожий
Репутация: 0 ±
Замечаний: 0% ±

Excel 2003
Заказ временно отложен.


Сообщение отредактировал easy_employer - Среда, 25.12.2013, 11:24
 
Ответить
СообщениеЗаказ временно отложен.

Автор - easy_employer
Дата добавления - 24.12.2013 в 15:59
SkyPro Дата: Вторник, 24.12.2013, 16:50 | Сообщение № 2
Группа: Друзья
Ранг: Старожил
Сообщений: 1206
Репутация: 255 ±
Замечаний: 0% ±

2010
Вообще, то общий доступ в Excel реализован крайне неудачно.
Такие задачи лучше решать при помощи баз данных (того же Access).


skypro1111@gmail.com
 
Ответить
СообщениеВообще, то общий доступ в Excel реализован крайне неудачно.
Такие задачи лучше решать при помощи баз данных (того же Access).

Автор - SkyPro
Дата добавления - 24.12.2013 в 16:50
easy_employer Дата: Вторник, 24.12.2013, 16:58 | Сообщение № 3
Группа: Пользователи
Ранг: Прохожий
Репутация: 0 ±
Замечаний: 0% ±

Excel 2003
Вообще, то общий доступ в Excel реализован крайне неудачно.

Общий доступ здесь нипричем , машины не в одной рабочей группе .
Access навряд ли даст дает преимущества, т.к. трудно будет переписывать уже имеющиеся макросы под новую среду.

Требуется просто отделить имеющиеся макросы от листа ввода данных, в смысле разнести их на 2 разных компа.


Сообщение отредактировал easy_employer - Вторник, 24.12.2013, 17:36
 
Ответить
Сообщение
Вообще, то общий доступ в Excel реализован крайне неудачно.

Общий доступ здесь нипричем , машины не в одной рабочей группе .
Access навряд ли даст дает преимущества, т.к. трудно будет переписывать уже имеющиеся макросы под новую среду.

Требуется просто отделить имеющиеся макросы от листа ввода данных, в смысле разнести их на 2 разных компа.

Автор - easy_employer
Дата добавления - 24.12.2013 в 16:58
AndreTM Дата: Вторник, 24.12.2013, 17:56 | Сообщение № 4
Группа: Друзья
Ранг: Старожил
Сообщений: 1762
Репутация: 501 ±
Замечаний: 0% ±

2003 & 2010
easy_employer, несколько дополнений:
- FTP-сервер надо сразу поднимать прямо на компьютере S. Это, кроме прочего, даст однозначность в вопросе того, что S функционирует и может обрабатывать данные.
- дополнительная сигнализация на нижних уровнях о выгрузке пакета тоже становится ненужной... вообще, процесс может быть примерно таким:
-- коллизии U разрешаются присвоением каждому клиенту уникального имени/ID, используемого при обмене
-- U формирует файл с именем по некоторому шаблону (напр., input<userId><datetime>) и выгружает на FTP
-- S периодически опрашивает каталог входящих на предмет появления файлов от user'ов
-- при появлении входящего файла - S его забирает (возможно, с удалением из каталога), обрабатывает, сохраняет результат, выкладывает результат на FTP. Исходящие имена тоже формируются по некоторому шаблону (напр., output<userId><datetimeInputFile>)
-- U по событию (или периодически) опрашивает каталог исходящих на предмет появления обработанных файлов. При этом U может ожидать как просто поступления информации для себя, так и обработки конкретного загруженного файла
-- при появлении выходного файла - U его скачивает, а затем импортирует, куда надо
-- естественно, та же FTPшка может хранить и лог обработки данных сервером (например, чтобы U был в курсе того, что на каком этапе процесса находится)


Skype: andre.tm.007
Donate: Qiwi: 9517375010


Сообщение отредактировал AndreTM - Вторник, 24.12.2013, 18:00
 
Ответить
Сообщениеeasy_employer, несколько дополнений:
- FTP-сервер надо сразу поднимать прямо на компьютере S. Это, кроме прочего, даст однозначность в вопросе того, что S функционирует и может обрабатывать данные.
- дополнительная сигнализация на нижних уровнях о выгрузке пакета тоже становится ненужной... вообще, процесс может быть примерно таким:
-- коллизии U разрешаются присвоением каждому клиенту уникального имени/ID, используемого при обмене
-- U формирует файл с именем по некоторому шаблону (напр., input<userId><datetime>) и выгружает на FTP
-- S периодически опрашивает каталог входящих на предмет появления файлов от user'ов
-- при появлении входящего файла - S его забирает (возможно, с удалением из каталога), обрабатывает, сохраняет результат, выкладывает результат на FTP. Исходящие имена тоже формируются по некоторому шаблону (напр., output<userId><datetimeInputFile>)
-- U по событию (или периодически) опрашивает каталог исходящих на предмет появления обработанных файлов. При этом U может ожидать как просто поступления информации для себя, так и обработки конкретного загруженного файла
-- при появлении выходного файла - U его скачивает, а затем импортирует, куда надо
-- естественно, та же FTPшка может хранить и лог обработки данных сервером (например, чтобы U был в курсе того, что на каком этапе процесса находится)

Автор - AndreTM
Дата добавления - 24.12.2013 в 17:56
doober Дата: Вторник, 24.12.2013, 18:05 | Сообщение № 5
Группа: Друзья
Ранг: Ветеран
Сообщений: 983
Репутация: 340 ±
Замечаний: 0% ±

Excel 2010
Как вариант,если IP видны с инета,они статичны(этот вопрос можно с провайдером решить).
Создать клиент-сервер на компах(аналог аськи) и весь обмен без проблем.


 
Ответить
СообщениеКак вариант,если IP видны с инета,они статичны(этот вопрос можно с провайдером решить).
Создать клиент-сервер на компах(аналог аськи) и весь обмен без проблем.

Автор - doober
Дата добавления - 24.12.2013 в 18:05
easy_employer Дата: Вторник, 24.12.2013, 18:23 | Сообщение № 6
Группа: Пользователи
Ранг: Прохожий
Репутация: 0 ±
Замечаний: 0% ±

Excel 2003
S периодически опрашивает

Вот не всё так просто.
Если делать без сигнального пакета, то S должен сканировать каталог (или FTP) ежесекундно, что нецелесообразно, а с FTP затруднительно.
Плюс, при работе по FTP надо сообщать о конце выгрузки файла, иначе сканирующий S возьмет недовыгруженный файл. (Правда это можно обойти с помощью переименования файла после выгрузки).

Да и собственно , если есть возможность работы VBA с TCP, почему бы не сделать всё этим методом ?

FTP-сервер надо сразу поднимать прямо на компьютере S


Может быть. Машина S будет полностью поглощена сканированием каталога ?
 
Ответить
Сообщение
S периодически опрашивает

Вот не всё так просто.
Если делать без сигнального пакета, то S должен сканировать каталог (или FTP) ежесекундно, что нецелесообразно, а с FTP затруднительно.
Плюс, при работе по FTP надо сообщать о конце выгрузки файла, иначе сканирующий S возьмет недовыгруженный файл. (Правда это можно обойти с помощью переименования файла после выгрузки).

Да и собственно , если есть возможность работы VBA с TCP, почему бы не сделать всё этим методом ?

FTP-сервер надо сразу поднимать прямо на компьютере S


Может быть. Машина S будет полностью поглощена сканированием каталога ?

Автор - easy_employer
Дата добавления - 24.12.2013 в 18:23
easy_employer Дата: Вторник, 24.12.2013, 18:24 | Сообщение № 7
Группа: Пользователи
Ранг: Прохожий
Репутация: 0 ±
Замечаний: 0% ±

Excel 2003
Создать клиент-сервер на компах(аналог аськи) и весь обмен без проблем.


Так кто его создаст ?
 
Ответить
Сообщение
Создать клиент-сервер на компах(аналог аськи) и весь обмен без проблем.


Так кто его создаст ?

Автор - easy_employer
Дата добавления - 24.12.2013 в 18:24
doober Дата: Вторник, 24.12.2013, 18:34 | Сообщение № 8
Группа: Друзья
Ранг: Ветеран
Сообщений: 983
Репутация: 340 ±
Замечаний: 0% ±

Excel 2010
Могу создать Аналог аськи.
Условие я выше описал
IP видны с инета(белые), и статичны.
Если не статичны,то при каждом включении надо IP прописывать на компах.
Если интересно,поищу у себя ,и сброшу то.что есть для теста.
Только обмен сообщениями реализован.но обмен файлами добавить не проблема


 
Ответить
СообщениеМогу создать Аналог аськи.
Условие я выше описал
IP видны с инета(белые), и статичны.
Если не статичны,то при каждом включении надо IP прописывать на компах.
Если интересно,поищу у себя ,и сброшу то.что есть для теста.
Только обмен сообщениями реализован.но обмен файлами добавить не проблема

Автор - doober
Дата добавления - 24.12.2013 в 18:34
easy_employer Дата: Вторник, 24.12.2013, 18:39 | Сообщение № 9
Группа: Пользователи
Ранг: Прохожий
Репутация: 0 ±
Замечаний: 0% ±

Excel 2003
-S имеет внешний IP адрес, U находится за NAT.


S имеет статичный адрес и доменное имя.
Пусть это называется "аналог аськи", я согласен :)


Сообщение отредактировал easy_employer - Вторник, 24.12.2013, 18:49
 
Ответить
Сообщение
-S имеет внешний IP адрес, U находится за NAT.


S имеет статичный адрес и доменное имя.
Пусть это называется "аналог аськи", я согласен :)

Автор - easy_employer
Дата добавления - 24.12.2013 в 18:39
AndreTM Дата: Вторник, 24.12.2013, 19:02 | Сообщение № 10
Группа: Друзья
Ранг: Старожил
Сообщений: 1762
Репутация: 501 ±
Замечаний: 0% ±

2003 & 2010
Машина S будет полностью поглощена сканированием каталога ?
:D

Кстати, а какие именно расчёты делаются на S?
Может, имеет смысл пересмотреть конфигурацию в сторону полноценного клиент-сервера?
То есть на S поднимем SQLExpress, с нужными ХП для обработки, а клиенты - будут просто клиентами БД...


Skype: andre.tm.007
Donate: Qiwi: 9517375010
 
Ответить
Сообщение
Машина S будет полностью поглощена сканированием каталога ?
:D

Кстати, а какие именно расчёты делаются на S?
Может, имеет смысл пересмотреть конфигурацию в сторону полноценного клиент-сервера?
То есть на S поднимем SQLExpress, с нужными ХП для обработки, а клиенты - будут просто клиентами БД...

Автор - AndreTM
Дата добавления - 24.12.2013 в 19:02
easy_employer Дата: Вторник, 24.12.2013, 19:12 | Сообщение № 11
Группа: Пользователи
Ранг: Прохожий
Репутация: 0 ±
Замечаний: 0% ±

Excel 2003
Кстати, а какие именно расчёты делаются на S?


Специфические расчеты, которые на сегодняшний день выполняются в рамках одной книги Excel, примерно до 5 секунд на обработку одного запущенного макроса, до 10 запусков у одного юзера в день, а часто и 0.
Затык происходит в связи с тем, что поскольку таблицей пользуются 10 человек в разных регионах, то проблематично обновлять синхронно у всех макросы и данные, проблематично проверять обновленность. Соответственно требуется переложить вычисления и данные на сервер.

SQL поднимать по-моему это слишком жирно для данной задачи.


Сообщение отредактировал easy_employer - Вторник, 24.12.2013, 19:21
 
Ответить
Сообщение
Кстати, а какие именно расчёты делаются на S?


Специфические расчеты, которые на сегодняшний день выполняются в рамках одной книги Excel, примерно до 5 секунд на обработку одного запущенного макроса, до 10 запусков у одного юзера в день, а часто и 0.
Затык происходит в связи с тем, что поскольку таблицей пользуются 10 человек в разных регионах, то проблематично обновлять синхронно у всех макросы и данные, проблематично проверять обновленность. Соответственно требуется переложить вычисления и данные на сервер.

SQL поднимать по-моему это слишком жирно для данной задачи.

Автор - easy_employer
Дата добавления - 24.12.2013 в 19:12
doober Дата: Вторник, 24.12.2013, 19:48 | Сообщение № 12
Группа: Друзья
Ранг: Ветеран
Сообщений: 983
Репутация: 340 ±
Замечаний: 0% ±

Excel 2010
Цитата
SQL поднимать по-моему это слишком жирно для данной задачи.

SQL как раз и решит вашу проблему(мое мнение)


 
Ответить
Сообщение
Цитата
SQL поднимать по-моему это слишком жирно для данной задачи.

SQL как раз и решит вашу проблему(мое мнение)

Автор - doober
Дата добавления - 24.12.2013 в 19:48
easy_employer Дата: Вторник, 24.12.2013, 20:04 | Сообщение № 13
Группа: Пользователи
Ранг: Прохожий
Репутация: 0 ±
Замечаний: 0% ±

Excel 2003
SQL как раз и решит вашу проблему(мое мнение)


"Аналог аськи" - нереален, при условии того , что сообщения идут только в одном направлении , от U к S ?
 
Ответить
Сообщение
SQL как раз и решит вашу проблему(мое мнение)


"Аналог аськи" - нереален, при условии того , что сообщения идут только в одном направлении , от U к S ?

Автор - easy_employer
Дата добавления - 24.12.2013 в 20:04
doober Дата: Вторник, 24.12.2013, 20:26 | Сообщение № 14
Группа: Друзья
Ранг: Ветеран
Сообщений: 983
Репутация: 340 ±
Замечаний: 0% ±

Excel 2010
Реально все,но на скуле удобнее и проще,можно его напрягать в работе процедурами.
Вам надо было проинформировать,что не только здесь,но и на других форумах вы опубликовали заказ.


 
Ответить
СообщениеРеально все,но на скуле удобнее и проще,можно его напрягать в работе процедурами.
Вам надо было проинформировать,что не только здесь,но и на других форумах вы опубликовали заказ.

Автор - doober
Дата добавления - 24.12.2013 в 20:26
easy_employer Дата: Вторник, 24.12.2013, 20:40 | Сообщение № 15
Группа: Пользователи
Ранг: Прохожий
Репутация: 0 ±
Замечаний: 0% ±

Excel 2003
на других форумах вы


на форуме по ссылке всё глухо, 3-х форумов нет.


на скуле удобнее и проще,можно его напрягать в работе процедурами


Нет такой задачи.
 
Ответить
Сообщение
на других форумах вы


на форуме по ссылке всё глухо, 3-х форумов нет.


на скуле удобнее и проще,можно его напрягать в работе процедурами


Нет такой задачи.

Автор - easy_employer
Дата добавления - 24.12.2013 в 20:40
AndreTM Дата: Вторник, 24.12.2013, 21:31 | Сообщение № 16
Группа: Друзья
Ранг: Старожил
Сообщений: 1762
Репутация: 501 ±
Замечаний: 0% ±

2003 & 2010
Если задача "сервера" состоит только в обработке данных пользователя (т.е. нет накопления пользовательских данных на сервере) - то обработка прямо на клиенте будет всегда быстрее. Тем более, если производительность клиентских машин такова, что они способны поддерживать "Офис 2003 и выше". Ибо самое узкое место псевдоКС-системы - это каналы связи, и пересылка данных (плюс достаточно надёжная логика синхронизации) будет занимать больше всего времени. Плюс возможные аварийные ситуации, которые в итоге приводят к возрастанию трафика на пересинхронизацию, переобработку...
Если же "сервер" ведёт накопление поступающих и обработанных данных с своей "базе" - то переход к полноценному серверу БД и есть самый эффективный путь решения вашей задачи...


Skype: andre.tm.007
Donate: Qiwi: 9517375010
 
Ответить
СообщениеЕсли задача "сервера" состоит только в обработке данных пользователя (т.е. нет накопления пользовательских данных на сервере) - то обработка прямо на клиенте будет всегда быстрее. Тем более, если производительность клиентских машин такова, что они способны поддерживать "Офис 2003 и выше". Ибо самое узкое место псевдоКС-системы - это каналы связи, и пересылка данных (плюс достаточно надёжная логика синхронизации) будет занимать больше всего времени. Плюс возможные аварийные ситуации, которые в итоге приводят к возрастанию трафика на пересинхронизацию, переобработку...
Если же "сервер" ведёт накопление поступающих и обработанных данных с своей "базе" - то переход к полноценному серверу БД и есть самый эффективный путь решения вашей задачи...

Автор - AndreTM
Дата добавления - 24.12.2013 в 21:31
easy_employer Дата: Вторник, 24.12.2013, 21:44 | Сообщение № 17
Группа: Пользователи
Ранг: Прохожий
Репутация: 0 ±
Замечаний: 0% ±

Excel 2003
Если задача "сервера" состоит только в обработке данных пользователя


Да, только обработка данных пользователя. Требуется, чтобы пользователь только заполнял лист "input" и получал готовый новый лист "output". Накопления данных нет.
При этом на стороне сервера остается возможность оперативного редактирования таблиц и макросов.
 
Ответить
Сообщение
Если задача "сервера" состоит только в обработке данных пользователя


Да, только обработка данных пользователя. Требуется, чтобы пользователь только заполнял лист "input" и получал готовый новый лист "output". Накопления данных нет.
При этом на стороне сервера остается возможность оперативного редактирования таблиц и макросов.

Автор - easy_employer
Дата добавления - 24.12.2013 в 21:44
AndreTM Дата: Вторник, 24.12.2013, 22:32 | Сообщение № 18
Группа: Друзья
Ранг: Старожил
Сообщений: 1762
Репутация: 501 ±
Замечаний: 0% ±

2003 & 2010
Тогда я вообще ничего не понимаю...
А "на клиентах" есть какое-либо накопление информации (тех же обработанных и импортированных листов)? Или идёт только некое "потоковое заполнение форм", типа "набрали-обработали-напечатали-забыли"?

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


Skype: andre.tm.007
Donate: Qiwi: 9517375010
 
Ответить
СообщениеТогда я вообще ничего не понимаю...
А "на клиентах" есть какое-либо накопление информации (тех же обработанных и импортированных листов)? Или идёт только некое "потоковое заполнение форм", типа "набрали-обработали-напечатали-забыли"?

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

Автор - AndreTM
Дата добавления - 24.12.2013 в 22:32
easy_employer Дата: Среда, 25.12.2013, 00:16 | Сообщение № 19
Группа: Пользователи
Ранг: Прохожий
Репутация: 0 ±
Замечаний: 0% ±

Excel 2003
Или идёт только некое "потоковое заполнение форм", типа "набрали-обработали-напечатали-забыли"?

Именно "набрали-обработали-напечатали-забыли".


Сообщение отредактировал easy_employer - Среда, 25.12.2013, 20:25
 
Ответить
Сообщение
Или идёт только некое "потоковое заполнение форм", типа "набрали-обработали-напечатали-забыли"?

Именно "набрали-обработали-напечатали-забыли".

Автор - easy_employer
Дата добавления - 25.12.2013 в 00:16
AndreTM Дата: Среда, 25.12.2013, 01:11 | Сообщение № 20
Группа: Друзья
Ранг: Старожил
Сообщений: 1762
Репутация: 501 ±
Замечаний: 0% ±

2003 & 2010
не хотелось бы , чтобы клиент имел доступ к макросам, по крайней мере к значительной их части
Вот это и есть главное в вашем ТЗ, с этого и надо было начинать. Исходя из этого - становится понятным ваше желание разделения техпроцесса именно на такие части.
Что же - тогда процесс реализации возможен и так, как предлагалось сначала (через FTP). Кстати, я всё же отказался бы от "сигнальных пакетов" - ведь это актуально только для "сервера", а для него каталог может находиться локально, и доступ к нему - быстрый. "Клиенты" же всё равно будут вынуждены опрашивать каталог по каналам связи, и это убьет весь выигрыш времени.
Можно поднять VPN между клиентами и сервером, будет просто общий доступ к SMB-шаре для обмена файлами. Поскольку у вас инициация сеансов всё равно завязана на клиентскую сторону - реализация приватной сети никакой сложности не представляет, вплоть до использования встроенных средств ОС. Естественно, серверная часть обработок не будет присутствовать на этой шаре. :)))
Ну или всё же начать реализацию связки Excel-MSSQL. В этом случае получаете полноценное КС-приложение, с масштабируемостью и кроссплатформенностью, хоть на планшетах и утюгах ввод данных делайте...


Skype: andre.tm.007
Donate: Qiwi: 9517375010
 
Ответить
Сообщение
не хотелось бы , чтобы клиент имел доступ к макросам, по крайней мере к значительной их части
Вот это и есть главное в вашем ТЗ, с этого и надо было начинать. Исходя из этого - становится понятным ваше желание разделения техпроцесса именно на такие части.
Что же - тогда процесс реализации возможен и так, как предлагалось сначала (через FTP). Кстати, я всё же отказался бы от "сигнальных пакетов" - ведь это актуально только для "сервера", а для него каталог может находиться локально, и доступ к нему - быстрый. "Клиенты" же всё равно будут вынуждены опрашивать каталог по каналам связи, и это убьет весь выигрыш времени.
Можно поднять VPN между клиентами и сервером, будет просто общий доступ к SMB-шаре для обмена файлами. Поскольку у вас инициация сеансов всё равно завязана на клиентскую сторону - реализация приватной сети никакой сложности не представляет, вплоть до использования встроенных средств ОС. Естественно, серверная часть обработок не будет присутствовать на этой шаре. :)))
Ну или всё же начать реализацию связки Excel-MSSQL. В этом случае получаете полноценное КС-приложение, с масштабируемостью и кроссплатформенностью, хоть на планшетах и утюгах ввод данных делайте...

Автор - AndreTM
Дата добавления - 25.12.2013 в 01:11
  • Страница 1 из 2
  • 1
  • 2
  • »
Поиск:

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