Конвертация из XLS в MXL (для 1С 7.7)

0. Natalia 256 15.04.10 22:09 Сейчас в теме
Опять - из "старых запасов, проверенных временем". Конвертация из Excel в MXL.

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

Перейти к публикации

Комментарии
В избранное Подписаться на ответы Сортировка: Древо развёрнутое
Свернуть все
1. Skif46 15.04.10 22:09 Сейчас в теме
Абалдеть!!! Не без изъянов, конечно, но работу по созданию таблиц существенно облегчает. Я конвертировал путевой лист по форме С-4. Править пришлось. Но по сравнению с тем, что с нуля рисовать - мегапомощь!

СПАСИБО!
3. Natalia 256 16.04.10 02:01 Сейчас в теме
(1) Потестировала на путевых листах со стандартным набором флажков - ... ой )) цвет фона то..... )))
Поправила изъяны передачи цвета фона и рамки (которые АВТО)
Поправила изъяны рамки (нижняя двойная и верхняя одинарная в сумме дают визуальную толстую жирную... некрасиво).
Надеюсь, в теперешнем виде править придется меньше.
2. oninfostart 55 16.04.10 00:25 Сейчас в теме
Есть острая необходимость, заранее +
4. Skif46 16.04.10 21:38 Сейчас в теме
Не, все равно - с формой путевого листа грузового автомобиля (4-С) глюки с объединением крайних правых ячеек - обьъединяются чуть ли не на всю длину.
5. Natalia 256 17.04.10 00:50 Сейчас в теме
(4) Может у меня не такой путевой? Вроде не вижу страшных проблем... В архиве исходник и два варианта конвертации - с объединениями и с заменой объединений
Прикрепленные файлы:
4C.zip
6. Pin 168 18.04.10 11:43 Сейчас в теме
Весьма полезный инструмент. Попробовала конвертировать авансовый(в прикр.файле). Результат, прямо сказать, разочаровал поначалу.
Но если попробовать так:
//МаксРяд = Excel.Cells(1, 1).SpecialCells(11).Row;
//МаксКолонка = Excel.Cells(1, 1).SpecialCells(11).Column;
МаксРяд =Excel.ActiveSheet.UsedRange.Row+Excel.ActiveSheet.UsedRange.Rows.Count();
МаксКолонка = Excel.ActiveSheet.UsedRange.Column+Excel.ActiveSheet.UsedRange.Columns.Count();

то результат заметно лучше становится.

Я для себя сделала так, что xls-файл, открытый пользователем до конвертации, не вызывает ошибки "Не удалось открыть файл " и после конвертации не закрывается.
Прикрепленные файлы:
240800000000.XLS
7. Natalia 256 18.04.10 16:55 Сейчас в теме
(6) Ну да - нижняя правая ячейка листа - объединенная... и все наперекосяк, если без поправки.
Поправила так:
МаксРяд = Excel.ActiveSheet.UsedRange.Row + Excel.ActiveSheet.UsedRange.Rows.Count() - 1;
МаксКолонка = Excel.ActiveSheet.UsedRange.Column + Excel.ActiveSheet.UsedRange.Columns.Count() - 1 ;
иначе захватываются лишние колонка и строка.

Кроме того, поправила "дельты", применяемые при укрупнении строк и колонок - это после экспериментов на разных сложных формах.

Если файл после конвертации не закрывать - то - если не был открыт пользователем - иногда повисает процесс, иногда остающийся даже после выхода из 1С, мешающий нормальной работе в Excel - потому оставлено так.
Если файл открыт - ошибки нет - просто вопрос в случае, если файл изменен. Ошибка бывает, если "сбивать курс, которым идет курсор". Но с этим пока тоже не боролась, да и не буду наверное.

Есть еще идея побороться с ширинами колонок - так чтобы консультантовские формы "миллиметрик в миллиметрик". Есть даже идея, как это сделать. Но там проблемы уже больше не в 1С.
8. Donat 18.04.10 22:42 Сейчас в теме
А мне всегда, в этом деле, YOKSEL помогал.
10. Natalia 256 26.04.10 13:16 Сейчас в теме
(8) Я тоже YOKSEL использую с удовольствием.
Этой обработкой можно не только "перенести дословно", но и реорганизовать таблицы. Иногда бывает нужно.
9. Dolly_EV 267 21.04.10 05:20 Сейчас в теме
За труд +, а мне всегда, в этом деле, вот это помогало: infostart
11. Sergiusnick 17.08.10 15:37 Сейчас в теме
Особенно мне понравилось "упрощает разговоры с заказчиками ("какой макет заказали - такой и получили")."
12. Natalia 256 17.08.10 20:54 Сейчас в теме
(11) От особо продвинутого начальства можно конечно получить нагоняй за "нетворческий подход" (было такое на одном из мест работы) :)
13. megatrend 121 06.06.11 20:55 Сейчас в теме
Отличная работа! Спасибо! :!:
14. Tristania 21.09.11 09:39 Сейчас в теме
Спасибо!Значительно упростило работу!
15. soloton 28.09.11 22:05 Сейчас в теме
Прекрасный инструмент. Упрощает работу и сокращает время разработки!
16. daviels 05.10.11 12:57 Сейчас в теме
Спасибо огромный респект создателю :)... правда... надо было сделать небольшую прогу для заполнения миграционных карт. Сконвертировал форму из формата xls ну просто шикарно... СПАСИБО.
17. OzzY 66 20.10.11 23:41 Сейчас в теме
Огромный жирный +
Спасибо.
18. LoboVik 20.12.11 17:05 Сейчас в теме
Абалденная штука. Не надо тратить время на рисование форм. Заказчик дает сфою форму в XLS ты ее конвертишь и все готово.
19. palmalsp 14.05.12 17:58 Сейчас в теме
Очень полезная вещь! Спасибо разработчику! Однозначно + )
20. www2007 26.02.13 22:57 Сейчас в теме
Очень сильно порадовала эта обработка. Легким движением заковыристая печатная форма перетекает в 1С!!
Отлично сделано! +++++!
21. Barok 27.02.13 01:02 Сейчас в теме
Спасибо большое. Держи плюсик!! Будем пользоваться, подправив немного деталей под себя! Искрене благодарю за проделанную работу!
22. BorisBelov 887 29.05.14 19:45 Сейчас в теме
Огромное спасибо автору! Часто приходится рисовать таблицы, надеюсь на облегчение в работе.
24. sergoqwe 25.09.14 11:01 Сейчас в теме
Спасибо за обработку.
А так же за то, что автор не бросает поддержку старых версий.
Оставьте свое сообщение
Вопросы с вознаграждением