Чтение файлов *.xlsx средствами 1С 8.2

Публикация № 139556

Разработка - Обмен данными 1С - Загрузка и выгрузка в Excel

Формат файлов *.xlsx представляет собой фактически ZIP-архив, внутри которого находятся xml-файлы, что позволяет считывать значения ячеек исключительно средствами 1С 8.2

Внутри архива *.xlsx практический интерес для получения значений ячеек представляют три вида файлов:

1. workbook.xml - содержит описание рабочей книги (количество листов)

2. sharedStrings.xml - содержит строковые значения ячеек всех листов

3. Файлы sheet1.xml...sheetN.xml - значения ячеек конкретного (по номеру, независимо от названия) листа.

Почти все значения внутри файлов sheet1.xml...sheetN.xml представляют собой числа, причем для строчных значений это индекс строки из файла sharedStrings.xml, а для даты - число дней с начала XX века.

Теги   f содержат написание формулы, теги v  - значение ячейки, независимо от того было ли оно "вбито" напрямую, или это результат формулы.

Данная обработка исключительно средствами 1С 8.2 производит распаковку архива *.xlsx и парсинг вышеуказанных файлов.

 

14.06.12

Заодно уж добавил и docxreader

Скачать файлы

Наименование Файл Версия Размер
xlsx-reader
.epf 8,79Kb
15.09.14
1022
.epf 8,79Kb 1022 Скачать бесплатно
DOCX Reader.epf
.epf 6,87Kb
14.06.12
318
.epf 6,87Kb 318 Скачать бесплатно

Специальные предложения

Комментарии
Избранное Подписка Сортировка: Древо
1. anton.fly7 149 13.06.12 11:32 Сейчас в теме
2. Abadonna 3843 13.06.12 11:38 Сейчас в теме
(1) anton.fly7,
формулы без проблем, только я не посчитал нужным их сами выводить, всё равно ж, в основном, значения нужны.

<c r="B4">
<f>SUM(B1:B3)</f>
<v>10920</v>
</c>
Тег f - формула, тег v - значение. Лично меня сама формула не интересует
3. andrewks 1273 13.06.12 14:59 Сейчас в теме
ага, сам примерно такое делал, только для ods (OpenOffice) - там тоже зип-архив, а внутриях хмл, который также можно распарсить
4. serega3333 13.06.12 15:36 Сейчас в теме
зачетно, для формул нужно очень
5. CheBurator 3408 13.06.12 19:54 Сейчас в теме
Автор, пиши ещё!
Шёпот теней; +1 Ответить
6. CaSH_2004 355 13.06.12 20:48 Сейчас в теме
Любопытно а какая скорость то чтения, есть какое-то сравнение? Например чтением через тот-же КОМ-Эксель?
7. andrewks 1273 13.06.12 22:26 Сейчас в теме
(6) по сравнению с КОМ-Эксель, думаю, на порядок
10. Abadonna 3843 14.06.12 05:23 Сейчас в теме
(6) CaSH_2004,
Проверял на матрице 10 000 строк х 5 колонок, ровно 7 секунд на моем рабочем
(Intel® Core™2 Duo CPU E7500 2.93GHz, ОЗУ 2 ГБ)
Обработку, скорее всего, можно и оптимизировать, эта скорее как пример на данный момент.
Может, и XML будет быстрее парсить как текстовик...
17. SergDi 27.06.12 11:55 Сейчас в теме
8. cool.vlad4 45 13.06.12 23:12 Сейчас в теме
9. Abadonna 3843 14.06.12 05:12 Сейчас в теме
(8) кхм... наверное тем, что я не мониторю все обработки :)))
В смысле, мы с Василием всегда плюсы друг-другу ставили, но никогда даже и не смотрели, что там за разработки ;)
Эту либо вообще не видел, либо в упор не помню
11. Abadonna 3843 14.06.12 18:37 Сейчас в теме
(8) cool.vlad4,
>А чем отличается от http://infostart.ru/public/19139/ ?
Посмотрел ради интереса, да абсолютно всем отличается! Код даже близко рядом не стоял, а что касается структуры архива - дык это мелкосфот придумал, а не мы с Василием.
И уж никогда бы мне в голову не пришло
МассивБукв = Новый Массив;
	МассивБукв.Добавить("A");
	МассивБукв.Добавить("B");
	МассивБукв.Добавить("C");
	МассивБукв.Добавить("D");
        .......... 

Испокон веков я делаю такие массивы так:
Стр="ABCDEFGHIJKLMNOPQRSTUVWXYZ";
Абушев; Den_D; +2 Ответить
12. Поручик 4363 15.06.12 14:38 Сейчас в теме
(11) А я бывало и так

МассивБукв = Новый Массив;
Для Код = КодСимвола("A") По КодСимвола("Z") Цикл МассивБукв.Добавить(Символ(Код)); КонецЦикла;
Boulala; Aleks.spb; kare; Абушев; Den_D; brr; Abadonna; +7 Ответить
13. Jonny_wk 17.06.12 18:25 Сейчас в теме
14. Den_D 53 21.06.12 14:31 Сейчас в теме
Скоро мы все перейдем на XML общение ))
И даже между собой исключительно по родительским узлам будем общаться)))
orehova123; +1 Ответить
15. Bassgood 25.06.12 22:50 Сейчас в теме
(0) Заметил, что не всегда экселевский файл читается корректно при помощи этого метода (колонки читаются не в том порядке, в котором они расположены в экселе, и некоторые значения ячеек читаются неправильно), в чем причина я понять так и не смог (заметил лишь только то, что если его содержимое скопировать в новый файл - то все читается нормально), скорее всего имеется какая то заморочка с преобразованием эксель файла в XML формат, потому что при помощи COM файл читается нормально (если интересно, то приложил этот эксель файл к сообщению). Вот такая вот загагулина.
Прикрепленные файлы:
Тестовый эксель.xlsx
16. Abadonna 3843 26.06.12 05:10 Сейчас в теме
(15) Zigfridish,
я это тоже заметил, но пока особо не разбирался. Обработка абсолютно прозрачная, с комментами, может кто и найдет, где собака порылась;) Будет время - сам еще внимательно попроверяю
42. ksnik 371 14.04.19 00:54 Сейчас в теме
(16) колонки перепутаны потому что колонки создаются не единовременно в порядке определеном в файе но иначе, по мере обнаружения заполненных значений ячеек при сканировании листа процедурой ПарсингSheet.
  ИначеЕсли XML.Имя="#text" Тогда
   Разница=НомерКолонки-ТЗ.Колонки.Количество();
   Для А=1 По Разница Цикл
    ТЗ.Колонки.Добавить();
   КонецЦикла;
   Значение=XML.Значение;

В данном случае помогло бы предварительое скаирование для определения кол-ва строк и колонок в файле (или м.б. считывание этих значений из полей файла), затем создание колонок и второй проход по файлу парсером уже с заполнением ТЗ для сохранения правилього порядка. Если много пустых их можно удалить позже.
Простейшим способом упорядочения колонок будут заголовки колонок на исходном импортируемом листе.
43. ksnik 371 14.04.19 10:19 Сейчас в теме
(42) Вот программная реализация удаления путаницы и упорядочения колонок
//Космачев 13.04.2019 +Фиксируем колонки чтоб не переставлялись+

Функция ПарсингSheet1проход(Лист=1)

 XML=Новый ЧтениеXML;
 ИмяФайла="sheet"+Строка(Лист)+".xml";
 XML.ОткрытьФайл(ВременнаяПапка+ИмяФайла);
 КолвоКолонок = 0;
 Пока XML.Прочитать() Цикл
  Если (XML.Имя="row") И (XML.КоличествоАтрибутов()>0) Тогда
   ТекущаяСтрока=XML.ЗначениеАтрибута(0);
   НомерСтроки=Число(ТекущаяСтрока);
  ИначеЕсли XML.Имя="c" Тогда
   ИмяЯчейки=XML.ЗначениеАтрибута(0);
   НомерКолонки=СтрЗаменить(ИмяЯчейки,ТекущаяСтрока,"");
   НомерКолонки=КолонкаЧислом(НомерКолонки);
  ИначеЕсли XML.Имя="#text" Тогда
   Если НомерКолонки>КолвоКолонок Тогда
    КолвоКолонок = НомерКолонки;
   КонецЕсли;
  КонецЕсли;
 КонецЦикла;
 Возврат КолвоКолонок;
КонецФункции


Функция ПарсингSheet(Лист=1)
//Космачев 13.04.2019 +Фиксируем колонки чтоб не переставлялись+ 
 КолвоКолонок = ПарсингSheet1проход(НомерЛиста);
 Сообщить(КолвоКолонок);
 ТЗ=Новый ТаблицаЗначений;
 Для Сч = 1 По КолвоКолонок Цикл
  ТЗ.Колонки.Добавить();
 КонецЦикла;

//Космачев 13.04.2019 ---Фиксируем колонки чтоб не переставлялись---

 XML=Новый ЧтениеXML;

...

//Космачев 13.04.2019 +убираем динамическое создание колонок - фиксируем колонки чтоб не переставлялись+
   //Разница=НомерКолонки-ТЗ.Колонки.Количество();
   //Для А=1 По Разница Цикл
   // ТЗ.Колонки.Добавить();
   //КонецЦикла;
Показать
27. 1cmax 151 05.07.12 00:34 Сейчас в теме
(15) Zigfridish, Аналогичную багу нашел.. эх.. сначала думал что для любого сервака универсальное решение. а то серваки на линуксе. там никаких ком объектов...
31. Spartan 343 28.03.13 18:41 Сейчас в теме
(15) А где в Вашем файле получаются неправильные значения при чтении обработкой? А то файл немаленький - визуально очень сложно заметить. Мне нужно понять, насколько это критично для моей задачи.
32. Abadonna 3843 28.03.13 18:43 Сейчас в теме
(31)Блин, ну код же открытый. Мне она без надобности, к старому я не возвращаюсь;)
33. Spartan 343 28.03.13 19:35 Сейчас в теме
(32) Да не, вопросов нет... За код спасибо! Это я написал для тех, кто будет использовать. ;)
34. Abadonna 3843 28.03.13 19:52 Сейчас в теме
(33) Spartan, я просто не заметил сгоряча, что (31) не мне :)))
35. Spartan 343 29.03.13 09:41 Сейчас в теме
(15),(31) Все, увидел... посмотрел сегодня на свежую голову.
P.S. Нашел в чем косяк - сейчас разбираюсь как победить. Получается неверный массив строк из файла sharedStrings.xml, если в нем присутствуют пустые строки.
18. fillipok 12 28.06.12 10:18 Сейчас в теме
Спасибо за обработку))в добавку:
1. файлы OpenOffice таблицы формата .ods открываются таким же способом только естественно файл с данными xml другой))(вроде и .odt так же, но не проверял).
19. Konder.Djironimo 30.06.12 09:10 Сейчас в теме
Спасибо! Все было в свое время заточено под *.xls но потом с переходом на *.xlsx пришлось всех оставлять на 2003, а тут всех обрадуем ;) еще раз спасибо!
20. Dethmond 03.07.12 08:54 Сейчас в теме
Хорошо что стал поддерживать *.xlsx. Спасибо
21. Abadonna 3843 03.07.12 18:29 Сейчас в теме
(20)Честное слово, это не я! :))))) Это мелкософт поддерживает
Dethmond; +1 Ответить
22. Dethmond 03.07.12 21:03 Сейчас в теме
(21) ладно, Microsoft`у тоже спасибо))
29. yuraos 960 28.03.13 09:06 Сейчас в теме
(21)

Честное слово, это не я! :))))) Это мелкософт поддерживает



говорят он уже пожалел об этом
---
в следующем офисе вроде грозятся зделать бинарный закрытый формат
:)
23. khaoos 239 04.07.12 04:50 Сейчас в теме
Классно придумано. Да и на другие статьи автора обращу внимание, интересные вещи пишет. Молодец!
24. 1cmax 151 05.07.12 00:21 Сейчас в теме
Кстати, если в файле нет ни одной ячейки со строками
файл sharedStrings.xml не создается
и обработка валится с ошибкой.

стоит добавить проверку

Процедура ПарсингSharedStrings()
XML=Новый ЧтениеXML;
//Добавлено: maxval 03.07.2012
Имя = Объект.ВременнаяПапка+"sharedStrings.xml";
Ф = новый Файл(Имя);
Если Не ф.Существует() Тогда
Возврат;
КонецЕсли;
XML.ОткрытьФайл(Имя);
/// maxval 03.07.2012
Abadonna; +1 Ответить
26. Abadonna 3843 05.07.12 00:31 Сейчас в теме
(24) 1cmax,
Ага, я как-то поленился проверить...
25. 1cmax 151 05.07.12 00:21 Сейчас в теме
реализовал все те же принципы под Управляемые формы, в.т.ч. Веб-клиент:
http://infostart.ru/public/142187/
28. cerg110 3 13.07.12 07:23 Сейчас в теме
Как раз что скинули файл для загрузки в xsls. Как будет возможность сразу скачаю. Спасибо за полезную обработку.
30. Spartan 343 28.03.13 18:37 Сейчас в теме
(0) небольшой косячок... в блоке
	//--- находим строчные значения из файла  sharedStrings.xml
	МассивСтрок=Новый СписокЗначений;
	ПарсингSharedStrings();
	//--- находим индексы строк и прочие значения из файла \xl\worksheets\sheetN.xml

МассивСтрок д.б. именно массивом, а не списком значений, иначе при получении значения из ячейки со строкой имеем тип "ЭлементСпискаЗначений", а не "Строка".
	Если ЭтоСтрока Тогда
				Попытка
					Значение=МассивСтрок.Получить(Число(XML.Значение));
				Исключение
				КонецПопытки;

Визуально в табличном поле этого не видно, но при работе с получившейся таблицей могут быть неожиданности.
36. Spartan 343 29.03.13 10:45 Сейчас в теме
(0),(15),(27) Как-то так, видимо:
Функция ПарсингSharedStrings()
	XML=Новый ЧтениеXML;
	//XML.ОткрытьФайл(ВременнаяПапка+"sharedStrings.xml");
	//Добавлено: maxval 03.07.2012 
	Имя = ВременнаяПапка+"sharedStrings.xml"; 
	Ф = новый Файл(Имя); 
	Если Не Ф.Существует() Тогда 
		Возврат Ложь; 
	КонецЕсли; 
	XML.ОткрытьФайл(Имя); 
	/// maxval 03.07.2012
	Пока XML.Прочитать() Цикл
		//Если XML.Имя="#text" Тогда
		//	МассивСтрок.Добавить(XML.Значение);
		//КонецЕсли;
		// Spartan - 29.03.2013 - начало
		Если XML.Имя = "t" И XML.ТипУзла = ТипУзлаXML.НачалоЭлемента Тогда
			Если XML.Прочитать() И XML.Имя = "#text" Тогда
				МассивСтрок.Добавить(XML.Значение);
			Иначе
				МассивСтрок.Добавить("");
			КонецЕсли; 
		КонецЕсли;
		// Spartan - 29.03.2013 - конец
	КонецЦикла;
	XML.Закрыть();
	
	Возврат Истина;
КонецФункции
Показать
Abadonna; +1 Ответить
37. Lapitskiy 906 05.03.15 14:10 Сейчас в теме
(36) Spartan, не недостаточно, когда несколько листов, неверно определяет.
38. freep777 06.08.15 14:44 Сейчас в теме
Обработка замечательная!!! Спасибо огромнющее за нее!

Только вот не пойму, на одном файле нормально работает, а на другом выдает ошибку
{Форма.Форма.Форма(80)}: Индекс находится за границами массива
ТЗ[НомерСтроки-1][НомерКолонки-1]=Значение;


Помогите, пожалуйста, разобраться.
(к сообщению прикреплены файлы - на "Книга2" - работает, а на "Книга1" - выдает ошибку)... Вроде ничем таким особым файлы не различаются??? Не могу понять...
Прикрепленные файлы:
Книга1.xlsx
Книга2.xlsx
39. ksnik 371 13.04.19 20:50 Сейчас в теме
(38) ответ найден, смотрите приложенные мной скриншоты - временные файлы,
вот этот лист загружается успешно

а на следующем скриншоте нумерация строк начинается не с единицы, что ведет к рассинхронизации номеров строк файла и таблизы значений 1с,

и он не загружается потому что в таблице значений количество строк соответствует количеству строк файла, но обращение к строке таблицы значений 1с идет по номеру строки файла который не соответствует номеру строки заведенному в 1с. Надо вводить уточнять нумерацию для соответствия между файлом и таблицей значений.
Прикрепленные файлы:
ccc1
ccc2
40. ksnik 371 13.04.19 21:45 Сейчас в теме
(38) вот такая доработка (исправление) парсит файл правильно
Функция ПарсингSheet(Лист=1)
 ТЗ=Новый ТаблицаЗначений;
 XML=Новый ЧтениеXML;
 ИмяФайла="sheet"+Строка(Лист)+".xml";
 XML.ОткрытьФайл(ВременнаяПапка+ИмяФайла);
 
 Пока XML.Прочитать() Цикл
  Если (XML.Имя="row") И (XML.КоличествоАтрибутов()>0) Тогда
   ТекущаяСтрока=XML.ЗначениеАтрибута(0);
   //Космачев+
   //Стр=ТЗ.Добавить();
   РазницаСтрок = ТекущаяСтрока - ТЗ.Количество();
   Для СчРазницаСтрок = 1 По РазницаСтрок Цикл
    Стр=ТЗ.Добавить();
   КонецЦикла;
   //Космачев-
   НомерСтроки=Число(ТекущаяСтрока);
Показать
41. ksnik 371 13.04.19 22:08 Сейчас в теме
Спасибо автору за легкий код! Очень хорошая обработка! Я еще добавил в нее номера строк и колонок вот так, процедуру ТЗИПриПолученииДанных надо подключить через обработчик события табличного поля:
// Добавим в начало модуля переменную необходимую для автоматической нумерации строк
Перем ТЗАнализа;
...
//считывание ячеек заданного листа
Процедура ОсновныеДействияФормыПарсинг(Кнопка)
 Если Не ФайлСчитан Тогда
  Предупреждение("Не открыт файл xlsx!",5);
  Возврат;
 КонецЕсли;
 ТЗИ.Очистить();
 //--- находим строчные значения из файла  sharedStrings.xml
 МассивСтрок=Новый СписокЗначений;
 ПарсингSharedStrings();
 //--- находим индексы строк и прочие значения из файла \xl\worksheets\sheetN.xml
 Если НомерЛиста>КоличествоЛистов Тогда
  Сообщить("Указан номер листа, превышающий общее количество листов. Установлен Лист 1",СтатусСообщения.Информация);
  НомерЛиста=1;
 КонецЕсли;
 //Космачев 13.04.2019 +добавил номера строк и колонок и уменьшил ширину пустых колонок+
 ТЗАнализа = ПарсингSheet(НомерЛиста);
 ЭлементыФормы.ТЗИ.Значение=ТЗАнализа;
 ЭлементыФормы.ТЗИ.СоздатьКолонки();
 СписокНомеров = Новый СписокЗначений;
 Для Каждого СтрТЗ Из ТЗАнализа Цикл
  Для Каждого КолТЗ Из ТЗАнализа.Колонки Цикл
   Если СокрЛП(ТЗАнализа[ТЗАнализа.Индекс(СтрТЗ)][ТЗАнализа.Колонки.Индекс(КолТЗ)])>"" Тогда
    Если СписокНомеров.НайтиПоЗначению(ТЗАнализа.Колонки.Индекс(КолТЗ))=Неопределено Тогда
     СписокНомеров.Добавить(ТЗАнализа.Колонки.Индекс(КолТЗ));
    КонецЕсли; 
   КонецЕсли;
  КонецЦикла;
 КонецЦикла;
 н = 0;
 Для Каждого КолонкаТЗИ Из ЭлементыФормы.ТЗИ.Колонки Цикл
  КолонкаТЗИ.ТекстШапки = СокрЛП(н);
  Если СписокНомеров.НайтиПоЗначению(н)=Неопределено Тогда
   КолонкаТЗИ.Ширина = 1;
  КонецЕсли;
  н = н + 1;
 КонецЦикла;
 ЭлементыФормы.ТЗИ.Колонки.Вставить(0,"НПП");
КонецПроцедуры

Процедура ТЗИПриПолученииДанных(Элемент, ОформленияСтрок)
 Для Каждого ОфСтроки Из ОформленияСтрок Цикл
  //ОфСтроки.Ячейки.Колонка1.УстановитьТекст(СокрЛП(ТЗАнализа.Индекс(Элемент.ТекущаяСтрока)));//+1
  ОфСтроки.Ячейки.Колонка1.УстановитьТекст(СокрЛП(ТЗАнализа.Индекс(ОфСтроки.ДанныеСтроки)));//+1
 КонецЦикла;
КонецПроцедуры
//Космачев-
Процедура ПриОткрытии()
Показать

и уменьшил ширину колонок в которых ни в одной строке нет данных
Оставьте свое сообщение

См. также

Удаление из файла эксель ненужных страниц средствами 1С без COM и через COM

Статья Программист Нет файла v8 1cv8.cf Бесплатно (free) Загрузка и выгрузка в Excel

Как средствами 1С из файла эксель удалить ненужные листы без COM и с ним. Я разрабатывал на платформе 1С:Предприятие 8.3 (8.3.14.1694)

28.01.2020    983    pavel_pss    12       

INFOSTART MEETUP Kazan. 13 марта 2020 г. Промо

Инфостарт продолжает путешествие по России. Следующая остановка - Казань. Тема мероприятия - управление и технологии автоматизации учета на платформе "1С: Предприятие". Ждем всех: докладчиков и участников! Стоимость участия - 5 500 рублей. Цена действительна до 30.01.2020

5 500

Обертка функций Excel на русском. Ускорение процесса разработки.

Статья Программист Нет файла v8 Windows Бесплатно (free) Загрузка и выгрузка в Excel Универсальные функции

Устали переключаться с русского на английский и обратно при работе с таблицами Excel из 1С? Сборка наиболее необходимых функций и методов работы с Excel, обернутых в функции 1С на русском языке.

24.10.2019    4263    DmitryKotov    6       

Выгрузка из 1С номенклатуры со штрихкодами без программирования

Статья Программист Пользователь Стажер Нет файла v8 УТ11 Россия Бесплатно (free) Загрузка и выгрузка в Excel Внешние источники данных

Я так и не смог найти простой инструкции или обработки, чтобы выгрузить из 1С: Управление торговлей 11 номенклатуру вместе со штрихкодами, поэтому решил написать собственную инструкцию.

28.08.2019    5151    user1114182    4       

Готовые переносы данных из различных конфигураций 1C Промо

Рекомендуем готовые решения для переноса данных из различных конфигураций 1C. C техподдержкой от разработчиков и гарантией от Инфостарт.

Загрузка картинок в справочники (Универсальная загрузка из табличного документа)

Статья Программист Нет файла v8 1cv8.cf Бесплатно (free) Обработка справочников Загрузка и выгрузка в Excel

Пример загрузки картинок в справочник Номенклатура (с помощью обработки универсальная загрузка данных из табличного документа). Проверялось на конфигурации УТ 11.4.7.

28.05.2019    4305    rasdag    2       

Преобразование EXCEL в таблицу значений без COM и других извращений

Статья Программист Нет файла v8 1cv8.cf Бесплатно (free) Загрузка и выгрузка в Excel

Получение таблицы значений из excel в 1С v8, без COM, внешних источников данных и т.д. EXCELВТаблицуЗначений() - За 10 строчек кода! Реализация протестирована на 1С 8.3.12.1714 (x64).

18.04.2019    18404    9    Eret1k    43       

Голосование за доклады на INFOSTART MEETUP Kazan - до 25 февраля. Промо

Выбирайте и голосуйте за самые интересные доклады! Лучшие из лучших попадут в окончательную программу казанского митапа. Оставить свой голос можно до 25 февраля 2020 года.

Подборка решений для взаимодействия со ФГИС «Меркурий» Промо

С 1 июля 2019 года все компании, участвующие в обороте товаров животного происхождения, должны перейти на электронную ветеринарную сертификацию (ЭВС) через ФГИС «Меркурий». Инфостарт предлагает подборку программ, связанных с этим изменением.

Копирование числовых ячеек из 1С в Excel

Статья Системный администратор Программист Нет файла v8 1cv8.cf Windows Бесплатно (free) Загрузка и выгрузка в Excel Администрирование данных 1С

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

15.01.2019    15695    itriot11    21       

1C:Предприятие для программистов: Расчетные задачи (зарплата). Онлайн-интенсив с 01 по 17 июня 2020 г. Промо

Данный онлайн-курс предусматривает изучение механизмов платформы “1С:Предприятие”, которые предназначены для автоматизации периодических расчетов, а именно - для расчета зарплаты. Курс предназначен для тех, кто уже имеет определенные навыки конфигурирования и программирования в системе “1С:Предприятие”, а также для опытных пользователей прикладного решения “1С:Зарплата и управление персоналом” и прочих прикладных решений, в которых реализован функционал расчета зарплаты.

4900 рублей

Запись одной книги Excel на нескольких листах средствами 1С (без внешних компонент)

Статья Программист Нет файла v8 1cv8.cf Бесплатно (free) Загрузка и выгрузка в Excel

Пользователи часто просят сохранить им стопиццот отчетов в один файл Excel, чтобы отчеты были в одном файле. Ну или клиент хочет счет, накладную и счет-фактуру получить в одном документе. 1С умеет это делать без всяких там COM-объектов. Давайте разберемся, куда нажимать и что крутить.

14.01.2019    15895    starik-2005    25       

Как легко загружать данные из электронных таблиц (Excel, OpenOffice и т.д)

Статья Программист Нет файла v8 1cv8.cf Бесплатно (free) Загрузка и выгрузка в Excel

Как легко загружать данные из электронных таблиц (Excel, OpenOffice и т.д). На примере загрузки в табличную часть документа Поступление товаров и услуг в УТ 11.4.

09.01.2019    9168    rasdag    14       

Новый раздел на Инфостарте - Electronic Software Distribution Промо

Инфостарт напоминает: на нашем сайте можно купить не только ПО, связанное с 1С. В нашем арсенале – ESD-лицензии на ПО от ведущих вендоров: Microsoft, Kaspersky, ESET, Dr.Web, Аскон и другие.

  • Низкие цены, без скрытых платежей и наценок
  • Оперативная отгрузка
  • Возможность оплаты с личного счета (кешбек, обмен стартмани на рубли и т.п.)
  • Покупки идут в накопления для получения скидочных карт лояльности Silver (5%) и Gold (10%)

Работа с Excel через COM

Статья Программист Нет файла v8 1cv8.cf Windows Бесплатно (free) Загрузка и выгрузка в Excel

Несколько примеров работы с excel (ms office 2010, в моем случае) через COM.

01.10.2018    7245    jaroslav.h    0       

Выгрузка в Excel с использованием формата OpenXML, разбор файла sheet1.xml

Статья Программист Нет файла v8 1cv8.cf Бесплатно (free) Загрузка и выгрузка в Excel

Судя по количеству просмотров темы https://infostart.ru/public/900022/ решил описать структуру файла Листа excel. На полноту не претендую, опишу то, что знаю.

21.09.2018    5518    user1045404    2       

​​​​​​​CorelDRAW Graphics Suite 2019 Промо

CorelDRAW – пакет профессиональных инструментов для редактирования фотографий, разработки дизайна, создания макетов страниц и векторных иллюстраций

Excel: создание в формате xlsx без COM технологии

Статья Программист Нет файла v8 1cv8.cf Бесплатно (free) Загрузка и выгрузка в Excel

По работе приходится часто выгружать данные в Excel формате. При большом количестве строк и формул этот процесс достаточно длительный. Решил написать для своих целей небольшую библиотечку для выгрузки данных. Используется технология open-xml. Никаких библиотек не надо, пишу напрямую в xml файлики. На данном этапе сделано форматирование, формулы.

10.09.2018    9231    user1045404    16       

Из Excel в 1С запросом

Статья Программист Нет файла v8 1cv8.cf Бесплатно (free) Загрузка и выгрузка в Excel

... ну, конечно, не прям так типовым языком запросов, а расширенным языком запросов. Речь пойдет о том, как "залить" данные в таблицы 1С и не пилить при этом бесконечного количества наколеночных обработок.

14.08.2018    16513    m-rv    5       

Управление ИТ-проектами. Модуль 2: продвинутый онлайн-курс по классическим методам управления проектами. Вебинары проходят с 12 марта по 11 июня 2020 года. Промо

Продвинутый онлайн-курс по классическому управлению ИТ-проектами позволит слушателям освоить инструменты из PMBoK® и 1С:Технологии корпоративного внедрения и научиться их применять для проектов любого масштаба. Курс включает в себя 12 вебинаров и 12 видеолекции, разбор кейсов и рекомендации экспертов по проектам слушателей. Ведущая курса - Мария Темчина.

от 13000 рублей

Загрузка из Excel в управляемом приложении

Статья Программист Нет файла v8::УФ Windows Бесплатно (free) Загрузка и выгрузка в Excel

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

30.11.2017    27032    alex_bitti    15       

Базовый курс по обмену данными в системе 1С:Предприятие. Онлайн-интенсив с 12 по 28 мая 2020 г. Промо

Данный онлайн-курс предусматривает изучение механизмов платформы “1С:Предприятие”, обеспечивающих обмен данными между различными прикладными 1С-решениями и взаимодействие с другими информационными системами. Курс предназначен для тех, кто уже имеет определенные навыки конфигурирования и программирования в системе “1С:Предприятие”.

5500 рублей

Функция сохранения картинок из книги Excel в каталог с определением координат на листе

Статья Программист Нет файла v8 Бесплатно (free) Загрузка и выгрузка в Excel Универсальные функции

Разбор файла *.xlsx как Web-архива, выгрузка изображений без потери качества, с определением положения изображений.

12.11.2017    8660    user634820_zergemoth    1       

Работа с Excel

Статья Программист Нет файла v8 Бесплатно (free) Практика программирования Загрузка и выгрузка в Excel

Собрал различные полезности для работы с Excel из 1С. Иногда приходится форматировать документ Excel программно из 1С. Так вот, чтобы не искать постоянно на просторах интернета как сделать левое выравнивание в ячейке Excel из 1С и т.п. решил опубликовать это...

23.10.2017    33504    arakelyan    39       

Сдача регламентированной отчетности из программ 1С Промо

Сдача регламентированной отчетности из программ "1С" во все контролирующие органы без выгрузок и загрузок в другие программы. Для групп компаний действуют специальные предложения.

от 1500 руб.

Невалидный XLSX при сохранении Табличного документа

Статья Программист Нет файла v8 1cv8.cf Бесплатно (free) Загрузка и выгрузка в Excel

Ошибка открытия XLSX файлов, созданных при сохранении Табличного документа. (Невалидный формат файла)

21.10.2017    10801    saddy    3       

Почему при загрузке таблицы Excel в 1С возникают ошибки?

Статья Программист Нет файла v8 Бесплатно (free) Загрузка и выгрузка в Excel

При загрузке из EXCEL в 1С методом MS ADODB.Connection столкнулся с некоторыми проблемами, которые попытался устранить в ниже приведенной статье. Надеюсь, что статья поможет вам сократить время разработки.  Особая благодарность Андрею М. за публикацию //infostart.ru/public/163640/

28.04.2017    14150    dakork    4       

1C:Предприятие для программистов: Запросы и отчеты. Второй поток. Онлайн-интенсив с 17 марта по 16 апреля 2020 г. Промо

Данный онлайн-курс предусматривает углубленное изучение языка запросов и возможностей системы компоновки данных, которые понадобятся при разработке отчетов, работающих на платформе “1С:Предприятие” в рамках различных прикладных решений. Курс предназначен для тех, кто уже имеет определенные навыки конфигурирования и программирования в системе “1С:Предприятие”, а также для опытных пользователей различных прикладных решений, которые используют в своей работе отчеты разного назначения.

6500 рублей

Загрузка значений свойств номенклатуры в Альфа-Авто с использованием обработки загрузки данных из табличного документа

Статья Программист Руководитель проекта Нет файла v8 1cv8.cf Автомобили, автосервисы Россия УУ Windows Учет ТМЦ Бесплатно (free) Загрузка и выгрузка в Excel

В публикации будет рассмотрено использование встроенной в отраслевую конфигурацию Альфа-Авто обработки по загрузке данных из табличного документа для заполнения значений дополнительных свойств номенклатуры.

13.10.2016    15798    miavolas    15       

Решение проблемы медленной загрузки из файла Excel, защищенного паролем

Статья Программист Нет файла v8 Россия Бесплатно (free) Загрузка и выгрузка в Excel

Столкнулся с проблемой загрузки из файла Excel. Загрузка занимала около получаса и не всегда заканчивалась успешно. Решение проблемы изложу в данной статье.

27.09.2016    9101    HAMMER_59    4       

Программы для исполнения 54-ФЗ Промо

С 01.02.2017 контрольно-кассовая техника должна отправлять электронные версии чеков оператору фискальных данных - правила установлены в 54-ФЗ ст.2 п.2. Инфостарт предлагает подборку программ, связанных с применением 54-ФЗ, ККТ и электронных чеков.

Быстрая выгрузка больших плоских отчетов в Excel

Статья Программист Нет файла v8 Windows Бесплатно (free) Загрузка и выгрузка в Excel

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

29.11.2015    14572    matveev.andrey.v    17       

Экспорт нескольких MXL таблиц в один XLS файл, на отдельные листы. Простой алгоритм

Статья Программист Нет файла v7.7 v8 Windows Бесплатно (free) Практика программирования Загрузка и выгрузка в Excel

Статья посвящена распространённому вопросу - как сохранить несколько таблиц (отчетов) в формате MXL, с которым работает 1С, на отдельные листы одного Excel файла. Освещается простой алгоритм решения проблемы штатными средствами, без использования внешних модулей и библиотек (не относящихся к 1С и Excel).

23.11.2015    15385    etmarket    14