|
ЗагрузкаИзExcel в ТаблицуЗначение ОбычныеФормы | ☑ | ||
---|---|---|---|---|
0
maptbln
14.05.18
✎
11:59
|
Всем добрый день,пишу загрузку из excel на табличную форму
с добавлением необходимых строк из файла и занесением из в колонки ТЗ начиная с 8 разобрался. а вот как сделать ,если мне нужно в уже сформированной только что ТЗ заполнить 2 и 3 колонку , не создавая при этом новых строк,а только значения пробовал Колонки.Вставить ,но почему то не отрабатывает подскажите пожалуйста Версия = Лев(Excel.Version,Найти(Excel.Version,".")-1); Если Версия = "8" тогда ФайлСтрок = Excel.Cells.CurrentRegion.Rows.Count; ФайлКолонок = Макс(Excel.Cells.CurrentRegion.Columns.Count, 13); Иначе ФайлСтрок = Excel.Cells(1,1).SpecialCells(11).Row; ФайлКолонок = Excel.Cells(1,1).SpecialCells(11).Column; Конецесли; Для НС = 2 по ФайлСтрок Цикл // НС указываем с какой строки начинать обработку Состояние("Файл "+Строка(ИмяФайла)+": Обрабатывается первый лист "+Строка(Формат(?(ФайлСтрок=0,0,((100*НС)/ФайлСтрок)),"ЧЦ=3; ЧДЦ=0"))+" %"); ОбработкаПрерыванияПользователя(); //указав данный оператор, цикл можно прервать в любой момент нажатие ctrl+break НоваяСтрока = тпБюджетныеОперации.Добавить(); Для НомерКолонки = 8 по тпБюджетныеОперации.Колонки.Количество() Цикл //Для НомерКолонкиЭкс = НомерКолонки-6 по Цикл //заполняем строку значениями НомерКолонкиТаб=НомерКолонки-6; ТекущееЗначение = Excel.Cells(НС, НомерКолонкиТаб).Value; ИмяКолонки = тпБюджетныеОперации.Колонки[НомерКолонки-1].Имя; НоваяСтрока[ИмяКолонки] = ТекущееЗначение; КонецЦикла; КонецЦикла; Для НС = 2 по ФайлСтрок Цикл Состояние("Файл "+Строка(ИмяФайла)+": Обрабатывается первый лист "+Строка(Формат(?(ФайлСтрок=0,0,((100*НС)/ФайлСтрок)),"ЧЦ=3; ЧДЦ=0"))+" %"); ОбработкаПрерыванияПользователя(); //указав данный оператор, цикл можно прервать в любой момент нажатие ctrl+break Для НомерКолонки = 3 по 3 Цикл НомерКолонкиБСП=НомерКолонки-2; ТекущееЗначениеСтДдс = Excel.Cells(НС,НомерКолонкиБСП).Value; ИмяКолонкиСтДДС = тпБюджетныеОперации.Колонки[НомерКолонки-1].Имя; //тпБюджетныеОперации.ЗаполнитьЗначения(Тест, "ИмяКолонкиСтДДС"]; КонецЦикла; КонецЦикла; |
|||
1
Ёпрст
14.05.18
✎
12:00
|
(0)
вася[0][0] = "лох"; |
|||
2
maptbln
14.05.18
✎
12:26
|
ТекущееЗначениеСтДдс1 = Excel.Cells(2,1).Value;
тпБюджетныеОперации[0][2]=ТекущееЗначениеСтДдс1; хочу заполнить первую строку 3 столбец , попробовал , за пределами цикла не подгружает |
|||
3
Ёпрст
14.05.18
✎
12:34
|
(2) сами строки/столбцы уже есть ?
|
|||
4
Ёпрст
14.05.18
✎
12:35
|
твой код будет работать, если
>>>в уже сформированной только что ТЗ заполнить 2 и 3 колонку , не создавая при этом новых строк,а только значения |
|||
5
maptbln
14.05.18
✎
12:38
|
(3)
да,в конец процедуры добавил,после добавление строк столбцов |
|||
6
maptbln
14.05.18
✎
12:55
|
может ли быть дело в том , что 2 - 3 колонка должны содержать значения справочников?
|
|||
7
Ёпрст
14.05.18
✎
13:47
|
(6) а ты чего туда передаешь ? Строки что ле ?
:)) |
|||
8
Ёпрст
14.05.18
✎
13:47
|
тогда конечно, >>>yt gjluhe;ftn
|
|||
9
maptbln
14.05.18
✎
13:58
|
(8)
значения).. а как тогда заполнить данные колонки , скажем если в столбцах в экселе данные по имени будут совпадать со значениями справочников,то все равно не передастся? |
|||
10
3achem
14.05.18
✎
14:05
|
(9) Используй Справочник.ИмяСправочника.НайтиПоНаименованию
|
|||
11
3achem
14.05.18
✎
14:06
|
(9) Но в таблице значения колонка должна иметь тип того справочника, по которому ты будешь делать поиск
|
|||
12
maptbln
14.05.18
✎
14:14
|
(11)
понял,спасибо пробую |
|||
13
Михаил Козлов
14.05.18
✎
14:29
|
(12) Посмотрите штатную (ИТС) обработку ЗагрузкаДанныхИзТабличногоДокумента.
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |