Внешняя обработка с таблицей EXCEL
Код открыт. Без комментариев (сегодня пятница)
По огромной просьбе посетителей сайта, рассказываю подробно как сделать это ЧУДО своими руками
Создаем форму в 1С
Меню — Файл-Вставить ActiveX
Если нет этого компонента , то качаем по ссылке
http://www.microsoft.com/en-us/download/details.aspx?id=22276
файл OWC11.EXE размер 18,5 мб. Устанавливаем (это расширение для Web EXCEL)
Постоянно встает вопрос :
А для чего ЭТО ?
— ну придумайте сами 🙂
А как сохранить в EXCEL ?
— есть кнопочка на панели инструментов (для пользователей) экспорт в EXCEl
— для программистов (программный способ)
// откроется книга EXCEL
ЭлементыФормы.ЭлементУправления2.Export();
//открыть и сразу записать на диск (в формате xml)
ЭлементыФормы.ЭлементУправления2.Export(«D:Книга3.xml»);
//записать на диск (в формате xml) без открытия
ЭлементыФормы.ЭлементУправления2.Export(«D:Книга3.xml»);
А как загрузить из EXCEL ?
ЭлементыФормы.ЭлементУправления2.XMLURL=»D:Тест.xml»;
P.S. я надеюсь у здешних программистов не вызовет вопрос как из xls сделать xml и обратно ?
АктивИкс?)
а как запустить, неактивное всё?
Улыбнуло. С пятницей Вас!
Так это же клинический случай…Ексель может и не помочь…)) Если что и требует проверки, то соответствие неких отчетам другим…
Эх, плюсну, чего уж там 🙂
бухи-то налили?
{Без офиса работало бы вообще цены не было б!!!!!!}
Не работает!!!
Офис стоит 2007 открываю обработку все неактивно и ничего не пашет, при увеличении окна увеличиваются все изображение.
Открыл в конфигураторе, там только форма. Кода нет вообще!
Если автор не ответит как с ней работать поставлю минус )
(6) Alexsisit,
Во первых публикация в Life
Во вторых в публикации написано : Код открыт. Без комментариев (сегодня пятница)
В третьих там всего лишь:
Microsoft Office Spreadsheet 11.0 ActiveX Control на форме
видно зависит от офиса , 2007 нет подрукой чтобы проверить его работу.
и вчетвертых : не могу ответить в комментариях у меня нет доступа почему то
и в пятых : хочешь ставить минус — ставь это твое право
Удачи, везде , всегда и во всем !
Ну это очень удобно когда работаешь в терминале. И им приходится сворачивать термилку для того что бы запустить эксель на очень медленных Компах.
А так мне кажется милое дело.
забавная обработавка =)) возьму себе в коллекцию, спасибо =)
пора сделать то-же самое для управляемой формы ). как примерhttp://infostart.ru/public/142204/ . Если не сделаете Вы — сделаю я (конечно-же с ссылкой на Вашу статью)
(10) MarSeN,
Делай — все в твоих руках и удачи.
Очень понравилась нашему администратору базы. Всегда все перепроверяет в Excel )))
Я просто во всех отчетах добавляю функционал вычисления суммы выделенных ячеек 🙂
Ну вообщем то не так часто но бывает такая необходимость насущная возникает и тогда пря мо таки и возникают неудобства с окрытием и закрытием окошек. Вообщем автору однозначно плюс скачаю как выше оратор написал себе в колекцию и не только я дуамаю вещь нужная и пригодиться.
мне очень понравилась ваша идея, пока не скачиваю (не хватает денюжки), но как будет… обязательно скачаю… мои бухи то же в восторге
Офис 2013 тоже не пашет
Сейчас привяжем и нашим бухам) будут просто прыгать от счастья)
а как реагирует на это Офис? возможна конвертация?
Согласна, удобно при работе из терминала, ведь без экселя в 1с никуда)
не всегда работает
Надо еще допилить возможность записывать полученный файл в 1С (не в виде Excel файла, а в виде документа) и чтобы была возможность одновременно нескольким людям с ним работать.
У меня такое было сделано, но подглюкивало. 🙂
Суть такая: Любители пообмениваться ексельками с какой-то мурней (неизвестно чем) делают свой файл, он записывается и потом много людей одновременно! могут менять там строки и колонки, у всех он переодически обновляется. У меня было реализовано как много много документов, в каждом по одной строке в табличной части.
Строки могут двигать вверх вниз (меняется дата документа, а дата документа используется для сортировки строк. Изначально даты сделаны с разрывом в месяц, начиная с 100 года от рождества христова. 🙂 учитывая. Когда строка передвигается, обычно достаточно поменять дату у одного перемещаемого документа (вверх вниз), все остальные не трогаем.
С колонками хуже — там надо много перезаписывать.
Будет больше пользы, если запилить мини-статью — как поместить актив-икс на форму.
Каждый наклепает себе этих обработок, сколько нужно. Для любого офиса)
(10) MarSeN, (конечно-же с ссылкой на Вашу статью) — статья Ваша есть , а ссылки на меня нет. бывает.
(22) cleaner_it, любой каприз — добавил описание в шапку статьи. Спасибо
(25) arkanru, мне кажется ты «Я» пропустил перед «—»
Должно же быть «По большому счету Я — …,» типа глупый еще и не все получается. Не переживай, будет желание поймешь.
я то как раз могу сохранить (в любом из трех форматов) и прочитать обратно. А вот что сделал Ты ?
(26) Когда кажется — креститься надо, нехристь :))) Пальцы веером, это — здорово ! Слюни подбери, я на досуге ради разминки и загрузил и выгрузил все что мне нужно, потом подумал — а что с этим делать ? Прикол, не более. Возможности этого activeX сильно урезаны, проще уж сам Эксель открыть и сделать все что нужно. Если ты такой крутой в доказательство выложи фрагмент кода, как ты формулы в ячейках сохраняешь.
(27) arkanru,
1. тебя не смущает дата публикации 23.11.12 15:21 ? спустя три года твой комментарий как бы немного устарел
2. элементарно. (там где ты учился — я преподавал)
3. Хамство не прощаю. До Савеловской не так далеко.
Код давай, я тебе таких картинок нарисую мульен
Хамства аналогично — не прощаю !
(29) arkanru,
ЭлементыФормы.ЭлементУправления2.ActiveCell.FormulaLocal=»=»+СокрЛП(Формула);
Картинки и код в целом — как вставить функцию 🙂
Боюсь, уважаемый, вы меня не поняли. Я прошу вас привести код сохранения формулы в ячейке при сохранении данных во «внешнем» файле на диске. В трех форматах — не прошу, хватит одного Экселя, версия Экселя — на выбор.
а приведенный вами код прописывает формулу в ячейку в поле в ЭлементеУправления, смеетесь, уважаемый ?
(32) arkanru, Как задал вопрос — так я тебе и ответил. Добавил в описание публикации
Постоянно встает вопрос :
А для чего ЭТО ?
— ну придумайте сами 🙂
А как сохранить в EXCEL ?
— есть кнопочка на панели инструментов (для пользователей) экспорт в EXCEl
— для программистов (программный способ)
// откроется книга EXCEL
ЭлементыФормы.ЭлементУправления2.Export();
//открыть и сразу записать на диск (в формате xml)
ЭлементыФормы.ЭлементУправления2.Export(«D:Книга3.xml»);
//записать на диск (в формате xml) без открытия
ЭлементыФормы.ЭлементУправления2.Export(«D:Книга3.xml»,false);
А как загрузить из EXCEL ?
ЭлементыФормы.ЭлементУправления2.XMLURL=»D:Тест.xml»;
P.S. я надеюсь у здешних программистов не вызовет вопрос как из xls сделать xml и обратно ?
(34) Скучно с тобой. Ты не понимаешь , что и о чем говоришь. Извиниться слабо, решил слинять
собачиться с тобой, да, нет ни малейшего желания, а, собсно, кто и перед кем должен извиняться ? может перечитаешь начало диалога ?
(36) arkanru,
— я показал как
— я показал как
я то как раз могу сохранить (в любом из трех форматов) и прочитать обратно. А вот что сделал Ты ? — осталось без ответа
что непонятного ?
а ты что начал вещать ?
а я ничем не хвастался. Обработка с загрузкой-выгрузкой с использованием данного activeX лежит на диске, только я пошел другим путем, создается новый «пустой» COMобъект и в него переносятся по ячейкам все данные и свойства из activeX и этот объект уже сохраняется. Считаю, что хвастаться и понты кидать незачем. Лично я пока этим кодом не доволен.
но хамить начал ты
извини, но мы с тобой в одной канаве не валялись. Так что — без обид, сам напросился
(38) arkanru, что же ты такой «болезненный» ? Улыбнись жизнь прекрасна.
Обработка была выложена — без единой строчки кода — это один из первых примеров использования активХ на форме
три года назад !!! еще раз повторюсь.
«только я пошел другим путем, создается новый «пустой» COMобъект и в него переносятся по ячейкам все данные и свойства из activeX и этот объект уже сохраняется.»
— молодец у каждого свою путь
нет, ты начал «По большому счету — херня» — если бы задал вопрос — я бы тебе спокойно ответил.а так от кого прилетело туда и вернулось. Тебе с этим жить 🙂
«извини, но мы с тобой в одной канаве не валялись»
ты знаешь — я вообще не имею привычки в канаве валяться
«Так что — без обид, сам напросился»
Не льсти себе, Tatitutu — обидеть очень хлопотно!
На обиженных воду возят. Сиди и обижайся в своем углу.
Лечиться тебе надо.
Когда я выложил в сети свои «изыскания» на предмет другого COMобъекта — Skype4Com у меня и в мыслях не было надуваться как индюк, что я там где-то что-то первым выложил.
А за напоминание о методе Export() — пасиб, что-то я его упустил из виду.
(40) arkanru, Ты нормально смотрю разговаривать не можешь.
Никто на тебя не обижался и обижаться не собирается — еще раз говорю не льсти себе.
Всегда пожалуйста. Обращайся.