|
удалить колонку из ТабДока | ☑ | ||
---|---|---|---|---|
0
dvrk
05.08.22
✎
08:01
|
Привет, вот вывожу на печать, открывается табдок, там выделяю столбец и удаляю его полностью - нормально смещаются остальные колонки, а если не заполняю в коде его просто, то все колонки криво съезжают, как программно выполнить действие "Выделить ненужный столбец, нажать ПКМ и нажать удалить" ?
|
|||
1
Галахад
гуру
05.08.22
✎
08:05
|
УдалитьОбласть
|
|||
2
ChiginAV
05.08.22
✎
08:05
|
Каждую колонку сделать отдельной областью и ненужные просто не присоединять
|
|||
3
dvrk
05.08.22
✎
08:07
|
(2) так тоже делал, криво смещается если что-то не присоединять
|
|||
4
dvrk
05.08.22
✎
08:07
|
(1) криво смещается
|
|||
5
Ryzeman
05.08.22
✎
08:09
|
(4) код в студию
|
|||
6
dvrk
05.08.22
✎
08:09
|
(5) какой
|
|||
7
Ryzeman
05.08.22
✎
08:10
|
(6) Которым задаёшь область столбца и удаляешь. Плюс, макете по которому ты табдок заполняешь у тебя нет объединённых ячеек в удаляемом столбце?
|
|||
8
dvrk
05.08.22
✎
08:11
|
(7) объединённые это Типа|Так ? такие есть
|
|||
9
dvrk
05.08.22
✎
08:13
|
(1) ну точнее удалить область я вообще не могу Ошибка при вызове метода контекста (УдалитьОбласть)
ТабДокумент.УдалитьОбласть("Описание", ТипСмещенияТабличногоДокумента.ПоГоризонтали); по причине: Несоответствие типов (параметр номер '1') |
|||
10
dvrk
05.08.22
✎
08:15
|
https://ibb.co/G7xmkzc область вон сверху
|
|||
11
Галахад
гуру
05.08.22
✎
08:18
|
Область в первом параметре:
Обл = Область(, НомерКолонки, , НомерКолонки); |
|||
12
dvrk
05.08.22
✎
08:24
|
(11) а как всю колонку удалить
|
|||
13
Ёпрст
05.08.22
✎
08:27
|
(12) это и есть вся колонка, но можешь и так написать Область("R2");
|
|||
14
dvrk
05.08.22
✎
08:29
|
(13) ну вот на скрине в (10) область "Описание" как узнать её "имя"? колонки этой
|
|||
15
Ryzeman
05.08.22
✎
08:29
|
(9) Ты путаешь область макета и область табдока.
|
|||
16
Ryzeman
05.08.22
✎
08:31
|
Тебе (11) написал как это правильно сделать
|
|||
17
dvrk
05.08.22
✎
08:32
|
(16) ну я не понимаю какие туда параметры сунуть, у меня колонка 5 судя по скрину..
|
|||
18
Галахад
гуру
05.08.22
✎
08:33
|
НомерКолонки = 5;
|
|||
19
dvrk
05.08.22
✎
08:34
|
(18) я понял что 5, а как правильно написать? Область(, 5, , 5) ?
|
|||
20
Ryzeman
05.08.22
✎
08:36
|
(19) Тебя в СП забанили?... Или пятница?
ТабличныйДокумент (SpreadsheetDocument) Область (Area) Вариант синтаксиса: По имени Синтаксис: Область(<ИмяОбласти>) Параметры: <ИмяОбласти> (обязательный) Тип: Строка. Имя области или адрес в формате "R1C1:R2C2", где число после "R" обозначает номер строки, число после "C" - номер колонки, символом ":" (двоеточие) разделяются координаты левого верхнего и правого нижнего угла области. В качестве имени также можно передавать пересечение двух областей, записываемое как "<Имя области 1> | <Имя области 2>". Вариант синтаксиса: По адресу Синтаксис: Область(<НомерПервойСтроки>, <НомерПервойКолонки>, <НомерПоследнейСтроки>, <НомерПоследнейКолонки>) Параметры: <НомерПервойСтроки> (необязательный) Тип: Число. Номер первой строки области таблицы. Если отсутствует, то указывается область, состоящая из колонок. <НомерПервойКолонки> (необязательный) Тип: Число. Номер первой колонки области таблицы. Если отсутствует, то указывается область, состоящая из строк. <НомерПоследнейСтроки> (необязательный) Тип: Число. Номер последней строки области таблицы. Если выделяется область из колонок (параметр <НомерПервойСтроки> не задан), то указывается номер строки, из которой берется формат строк. <НомерПоследнейКолонки> (необязательный) Тип: Число. Номер последней колонки области таблицы. |
|||
21
Ryzeman
05.08.22
✎
08:37
|
(19) Откуда мы знаем что ты там в табдоке наприсоединял. Может у тебя нужная тебе область 25-я, а может первая.
|
|||
22
dvrk
05.08.22
✎
08:41
|
(21) у меня выводится всё так как на скрине на макете
|
|||
23
Ryzeman
05.08.22
✎
08:50
|
(22) Честно говоря, я немного в афиге. Даже просто зайти в СП, там предельно понятные примеры как именно это надо использовать, тебе сказали что и как делать. Вместо этого ты ждёшь код) И ладно бы если задача сложной была - тут же блин просто посмотреть в СП. Я думал так только ливингстар\найтхантер делает. Ну ок, раз ты НАСТОЛЬКО ленив, две строчки кода мне не жалко, в честь пятницы:
ОбластьКУдалению = ТабДокумент.Область("R2"); ТабДокумент.УдалитьОбласть(ОбластьКУдалению, ТипСмещенияТабличногоДокумента.ПоГоризонтали); |
|||
24
Ryzeman
05.08.22
✎
08:50
|
в твоём случае
ОбластьКУдалению = ТабДокумент.Область("R5"); |
|||
25
dvrk
05.08.22
✎
08:57
|
(24) я так пробовал, не получилось, поэтому думал неправильно что-то сделал
|
|||
26
dvrk
05.08.22
✎
08:57
|
(24) Если СсылкаНаОбъект.Организация.Код = "00002" Тогда
Область = ТабДокумент.Область("R5"); ТабДокумент.УдалитьОбласть(Область, ТипСмещенияТабличногоДокумента.ПоГоризонтали); КонецЕсли; Возврат ТабДокумент; |
|||
27
Ryzeman
05.08.22
✎
08:58
|
(26) Пройдись отладчиком, что у тебя в переменной область.
Обойди коллекцию ячеек, то ли там вообще |
|||
28
Ryzeman
05.08.22
✎
08:59
|
(27) ну и не получилось - что именно не так? На что то ругается или удаляет не то\не там?
|
|||
29
dvrk
05.08.22
✎
09:00
|
(28) да ничего не удаляет, а что я в отладчике увижу что в Область? ну там ОбластьЯчеекТабличного документа
|
|||
30
Ryzeman
05.08.22
✎
09:01
|
(29) ну так посмотри что в ней внутри
|
|||
31
dvrk
05.08.22
✎
09:02
|
(30) я извиняюсь, я тупой, а что внутри мне посмотреть? там много чего,
АвтоВысотаСтроки Истина Булево АвтоОтметкаНезаполненного Ложь Булево АвтоОтступ 0 Число ВертикальноеПоложение Неопределено |
|||
32
ptiz
05.08.22
✎
09:05
|
(0) "открывается табдок, там выделяю столбец и удаляю его полностью - " - ты ведь это делаешь после вывода ВСЕГО табличного документа. Так и программно делай.
|
|||
33
dvrk
05.08.22
✎
09:06
|
(32) ага, вот я и спрашиваю как это сделать
|
|||
34
Ryzeman
05.08.22
✎
09:09
|
(31) Если у тебя всё по умолчанию, чмотри что в тексте. Если тыкнута галка использоватьзначение - то что в значении.
Через Shift+F9 Область.Текст Ну или по ячейкам ТабДокумент.Область("R5С1"); Хотя я уже понял в чём проблема) Область C5, а не R5... |
|||
35
Ryzeman
05.08.22
✎
09:10
|
В общем, прочитал бы сам внимательно СП, сделал бы и всё получилось
|
|||
36
dvrk
05.08.22
✎
09:11
|
(35) почему С5?
|
|||
37
dvrk
05.08.22
✎
09:12
|
(34) у меня эти колонки пустые, ну и в отладчике тоже Область.Текст "" Строка
|
|||
38
Ryzeman
05.08.22
✎
09:12
|
Потому что R - Row - Строка. C - Column - Столбец
|
|||
39
Ryzeman
05.08.22
✎
09:13
|
(37) а ты в какой момент то удаляешь вообще это всё? Ты табдок уже сформировал?
|
|||
40
dvrk
05.08.22
✎
09:15
|
(39) удаляю перед Возврат ТабДок
|
|||
41
dvrk
05.08.22
✎
09:18
|
(39) пере выводом тоже удалял
|
|||
42
dvrk
05.08.22
✎
09:20
|
мне что угодно подойдёт, и видимость ложь и ширина 0 и удалить
ничего не получается |
|||
43
Ryzeman
05.08.22
✎
09:21
|
Ну, я не знаю чем ещё тебе помочь :-D Области табдока у тебя якобы пустые, но выводятся они точь-в-точь как на макете - не пустые. При этом точка останова у тебя перед возвратом. Ну, такого просто не бывает. Либо ты смотришь не то или не там.
|
|||
44
dvrk
05.08.22
✎
09:22
|
(43) не, они выводятся пустые по условие если организация, для которой я сейчас и делаю, я убрал вывод этих колонок т.к. в колонке картинка - она не в ячейку выводится а 'поверх' ячейки и чтобы при смещении картинка не залезла на другую колонку я просто сделал если организация 1 тогда параметр заполняется иначе конецесли
|
|||
45
dvrk
05.08.22
✎
09:26
|
(43) ты имеешь ввиду мне нужно заполнять параметр и а отладчике посмотреть нужную ли колонку я получаю в Область?
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |