Перевод кода макроса в код для 1С

23.01.10

Разработка - Инструментарий разработчика

Возникла необходимость запускать из под 1С в excel макросы.
Макрос записывал в самом excel,затем переводил код под 1С...,-надоело муторное проставление строк после ..CodeModule.InsertLines("..,поиск кавычек и.т.д..,в связи с чем решил написать обработку,переводящую код макроса в код для запуска из под 1С.
Может кому ещё сгодится

Скачать файл

ВНИМАНИЕ: Файлы из Базы знаний - это исходный код разработки. Это примеры решения задач, шаблоны, заготовки, "строительные материалы" для учетной системы. Файлы ориентированы на специалистов 1С, которые могут разобраться в коде и оптимизировать программу для запуска в базе данных. Гарантии работоспособности нет. Возврата нет. Технической поддержки нет.

Наименование По подписке [?] Купить один файл
перевод макроса для 1С
.ert 10,50Kb
283
283 Скачать (1 SM) Купить за 1 850 руб.

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

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

 

См. также

Инструментарий разработчика Системный администратор Программист Платформа 1С v7.7 1C77 Абонемент ($m)

Консоль запросов к базе SQL, не требующая внешних компонент

10 стартмани

29.04.2015    22469    57    Gvozdod    8    

16

Инструментарий разработчика Системный администратор Программист Платформа 1С v7.7 Платформа 1С v8.3 Абонемент ($m)

Очередная редакция альтернативного стартера, являющегося продолжением StartManager 1.3. Спасибо всем, кто присылал свои замечания и пожелания, и тем, кто перечислял финансы на поддержку проекта. С учетом накопленного опыта, стартер был достаточно сильно переработан в плане архитектуры. В основном сделан упор на масштабируемость, для способности программы быстро адаптироваться к расширению предъявляемых требований (т.к. довольно часто просят добавить ту или иную хотелку). Было пересмотрено внешнее оформление, переработан существующий и добавлен новый функционал. В общем можно сказать, что стартер эволюционировал, по сравнению с предыдущей редакцией. Однако пока не всё реализовано, что планировалось, поэтому еще есть куда развиваться в плане функциональности.

1 стартмани

23.04.2014    169052    1889    Alexoniq    1603    

499

Инструментарий разработчика Программист Платформа 1С v7.7 Платформа 1С v8.3 Россия Абонемент ($m)

Согласитесь, что окно стандартное сообщений в 1С иногда приносит больше неудобств, чем пользы. И тем более разные "Предупредить"... Что с этим окном только не делают! Его отцепают от формы, делают маленьким, умудряются спрятать за границы экрана. А потом звонят программистам с претензией, что документ почему-то не проводится, отя ничего и не пишет. У вас такого не было? А вот у нас было и не раз )))

1 стартмани

04.09.2013    33520    61    O-Planet    78    

49

Инструментарий разработчика Программист Платформа 1С v7.7 1C77 Абонемент ($m)

На днях встретил вопрос на форуме про возможность внесения изменений в конфигурацию без долгого сохранения в рабочей базе большого объема. Вот решил поделиться опытом, как это делал я. База у нас была объемом порядка 120 Гб. К базе обращался сайт в режиме 24/7, поэтому важно было быстро сохранять изменения и желательно без последующего монопольного запуска для восстановления индексов и процедур и без отключения пользователей от базы. Это первая часть статьи и посвящена она справочникам. С одной стороны - это самый простой объект, с другой стороны, именно про справочник спрашивалось на форуме. Если статья будет востребована, то я напишу аналогичные про документы, регистры и может еще что.

1 стартмани

13.08.2013    21995    Reptile    5    

36

Инструментарий разработчика Программист Платформа 1С v7.7 1C77 Абонемент ($m)

Встала недавно задача для одной организации, которая все еще на 1С 7.7 немного автоматизировать работу отдела продаж. А именно уйти от ручного заполнения договоров, сделанных юристами в MS Word. Договора от разных фирм и разного назначения отличались. Переводить их в таблицы 1С очень не хотелось и нашел способ прямо в файлах Word сделать небольшие дополнения, чтобы можно было печатать, используя именно эти заготовки юристов.

1 стартмани

14.07.2013    27793    56    adamx    11    

14

Инструментарий разработчика Программист Платформа 1С v7.7 1C77 Абонемент ($m)

Давным давно, когда я еще плотно писал на 7.7 работа с формами была мучительной и неудобной. Приходилось каждый элемент выкладывать, выравнивать на форме ручками, прописывать код в модуле. Иногда при разработке очередной формы приходила в голову мысль: "а где-то я уже похожее делал..." и начинался мучительный поиск подходящего кода в своих запасах........

1 стартмани

21.02.2013    18432    36    MarSeN    14    

17

Инструментарий разработчика Программист Платформа 1С v7.7 1C77 Абонемент ($m)

Анализируем различные данные в 1С, используя OLAP-технологии со всеми прелестями. Т.е. наглядное отображение данных, быстрые расчеты, горизонтальные и вертикальные группировки любой вложенности, удобная фильтрация, Drag'n'Drop и ещё много приятных вещей от MS. Обработка на входе принимает практически любую таблицу значений (ТЗ в которой колонкам указаны типы значений, строка, число и т.п.), на выходе имеем на форме 1С сводную таблицу и график по этой ТЗ, с которой работаем, как и в Excel со сводной таблицей и диаграммой. Взял за основу разработку «OLAP Анализ счёта» ( http://infostart.ru/public/14964/ ) от JohnyDeath и переделал под любую ТЗ. Опционально используется «Прогресс бар для 1С 77» (http://infostart.ru/public/14061/ ) от Gmix.

1 стартмани

21.12.2012    36467    51    venger    7    

23
Комментарии
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
1. Redokov 82 22.01.10 15:22 Сейчас в теме
Дело хорошее, хоть и под 7.7
Есть ли планы на 8?
2. D9ID9I_SaIIIa 58 22.01.10 15:46 Сейчас в теме
(1)написал по необходимости для 7.7
13. Sure 166 27.01.10 17:55 Сейчас в теме
Вроде бы всё правильно...
Ехсел=СоздатьОбъект("Excel.Application");
Книга=Ехсел.Workbooks.Add;
MR=Книга.VBProject;
NM=MR.VBComponents.Add(1);
NM.CodeModule.InsertLines(1,"Sub M");
NM.CodeModule.InsertLines(2,"MsgBox 'aaa'");
NM.CodeModule.InsertLines(3,"End sub");
Показать

Но!..

MR=Книга.VBProject;
{D:\MODULE.ERT(8)}: Microsoft Office Excel: Программный доступ к проекту Visual Basic не является доверенны
Обидно :cry:
14. D9ID9I_SaIIIa 58 27.01.10 19:25 Сейчас в теме
(13)В настройках Exсel
Сервиз--->Параметры--->Безопасность--->Безопасность макросов
уровень безопасности- низкая
Надежные издатели----доверять доступ к VB проекту
15. D9ID9I_SaIIIa 58 27.01.10 19:27 Сейчас в теме
(13) и Ехсел.Run("M"); //чтоб запускалось при открытии excel
3. newbas 534 22.01.10 17:00 Сейчас в теме
4. KitKat 22.01.10 18:00 Сейчас в теме
Это курутобл, как раз нужна такая обработочка! Сасибо , Дядя Саша!
5. Abadonna 3969 23.01.10 10:35 Сейчас в теме
(0)
поиск ковычек

Поправь - кАвычек, а то прям аж глаз режет ;)
Разработка: +
6. D9ID9I_SaIIIa 58 23.01.10 12:05 Сейчас в теме
(5) очепятки разноорбязят техст ) :D
7. Abadonna 3969 23.01.10 12:09 Сейчас в теме
(6) ля-ля не надо :D буквы "а" и "о" шибко далеко расположены, чтобы на очепятку канало ;)
8. D9ID9I_SaIIIa 58 23.01.10 14:12 Сейчас в теме
9. SiAl 76 25.01.10 13:03 Сейчас в теме
Прикольно. Молодец. Пиши подобное по "восьмерку".
10. dav405 103 26.01.10 12:09 Сейчас в теме
Ха, плюс. Забавная идея.
11. adapter 418 27.01.10 13:30 Сейчас в теме
я чес гря смысла не понял. Зачем из 1С формировать код макроса для выполнения в том же ексель? Есть ведь OLE, или можно выполнить из 1с уже готовый макрос в книге Ексель. Реальный пример задачи можно в студию?
12. D9ID9I_SaIIIa 58 27.01.10 15:20 Сейчас в теме
(11)
ну например в excel выгружаю таблицы,потом по эти таблицам строю графики(через макрос вставленный из 1С).
С помощью макроса я размещаю диаграмму на листе там -где мне это необходимо,меняю цвета рядов диаграммы,изменяю размер диаграммы...
//-----
предварительно я выгружаю из 1С таблицы ,затем записываю макрос строящий диаграмку,посмотрел что да как будет выглядеть,отшлифовал макрос в самом excele к необходимому мне результату,с помощью обработки перевел в код 1С и вставил в конфигурацию.При формировании отчета выгружаю все в excel с запуском макроса,естественно из под 1С.
//--------------
да можно выполнить из 1С готовый макрос в excel
например Exceл.Run("Макрос1") ну это для моего примера,просто не стал последнюю строчку дописывать в обработку :D
16. adapter 418 28.01.10 09:07 Сейчас в теме
(12) вот выше уже сказали про траблу. Если менять код макроса программно, то надо в параметрах ставить доверие. ПО умолчанию у всех выключено. Значит автоматически работать не будет - пройти по всем юзверям и пожмакать галки это не гут. ИМХО проще сделать так:
1. Подготовить заранее книгу excel с форматированием и диаграммой.
2 Хранить ее в каталоге ИБ для 77 или в хранилище для 8
3. Из 1с, программно, открыть, заполнить данными

Можно довесить пару бантиков:
например сохранить книгу как шаблон (xla), новые книги программно создавать из этого шаблона. Есть такой параметр в Open. ТОгда будет новая книга1.xls с нужными данными

Если совсем что то нереальное надо, какую то интерактивность, выполнение макросов у клиента после заполнения, то можно вписать готовый макрос и через Ехсеl.Run
17. D9ID9I_SaIIIa 58 28.01.10 09:21 Сейчас в теме
(16) "1.Подготовить заранее книгу excel с форматированием и диаграммой.
2 Хранить ее в каталоге ИБ для 77 или в хранилище для 8
3. Из 1с, программно, открыть, заполнить данными"
отчёты у мня выводит 1 пользователь,отчёты слишком громоздкие и зависят от множества параметров,так что подготовить excel с форматированием не получиться,+одному "юзверю" настроить excel дело 1 мин.,делал для себя кому пригодиться хорошо.,хотя твоя идея тоже неплохая
18. adapter 418 28.01.10 09:28 Сейчас в теме
или засунуть запуск макроса в sub_main - тогда макрос сам будет стартовать при открытии книги, без всякой 1с и OLE (com)
20. Tatitutu 3849 29.01.10 14:19 Сейчас в теме
(18) http://infostart.ru/public/62799/ - там есть два моих примера как можно обойти ДОВЕРИЕ к МАКРОСАМ )))) и это не придел
(0) как варинт , для доработки
макрос в код 1С - имя макроса в список
список как параметр в 1С
макрос в Личную книгу макросов
после всех манипуляций книгу можно "убивать" или "откладывать" до нужных времен.
D9ID9I_SaIIIa; +1 Ответить
19. Mopo3 334 29.01.10 13:40 Сейчас в теме
21. kubik12 31.05.10 04:48 Сейчас в теме
всем привет!у меня проблема мне очень надо макрос который в экселе (перезаписать код) в 1С . Вопрос:объясните мне почему программа которая переводит как я понял код макроса в 1с 8.0 у меня не работает?может я что-то не так делаю? :(
Прикрепленные файлы:
задача о назначении.Полевикова.xls
22. Tatitutu 3849 31.05.10 11:03 Сейчас в теме
"Разработка компьютерной технологии решения экономико-математических задач о назначениях венгерским методом"

ладно лирики
1. потому что обработка для 7.7
2. у тебя не МАКРОС, а форма с кодом - это немного разные вещи
что ты хочешь в 8 ку перетащить Sub минимизация() ? или полностью весь фунционал ?
так его намного проще в 8 ке написать заново
23. kubik12 31.05.10 18:12 Сейчас в теме
минимизацию и максимизацию!!!!!!!или хотябы минимизацию . дело в том что я даже понятия не имею как это сделать в 1с!!! Если можно помогите!!!!!! :cry: :cry:
24. Самоделкин 2 31.03.14 15:11 Сейчас в теме
Хорошая штука, хоть и много времени прошло с ее создания, а до сих пор актуальна.
Оставьте свое сообщение