Имя: Пароль:
1C
1C 7.7
v7: Поле агрегатного объекта не обнаружено (Объединить)
,
0 furia
 
19.07.12
01:04
привет.
пытаюсь объединить ячейки, никак не получается...
из за чего эта ошибка ?

Ячейки = "R1"+"C7"":R"+n+"C7";
       Обл = Т.Область(Ячейки);
       Обл.Объединить();
1 izekia
 
19.07.12
01:12
хм, нет семерки, не помню уже
2 zladenuw
 
19.07.12
01:13
а тебе зачем ?
там есть такое
Область(<?>)
Синтаксис:
Область(<R1>,<C1>,<R2>,<C2>)
Назначение:
Возвращает значение типа ''ОбластьТаблицы'' области выходной таблицы или таблицы в режиме ввода данных.
Параметры:
<R1> - необязательный параметр. Номер первой строки области.
<C1> - необязательный параметр. Номер первого столбца области.
<R2> - необязательный параметр. Номер последней строки области.
<C2> - необязательный параметр. Номер последнего столбца области.
Замечание:
Если последняя строка и последний столбец отсутствуют, то область задана единственной ячейкой. Если строки или столбцы отсутствуют, то область задана диапазоном столбцов или строк соответственно. Если метод вызван без параметров, то область задана всей таблицей.
3 furia
 
19.07.12
01:20
(2) пытаюсь объединить ячейки
что то типо этого
_____ ______ _______
|_____|______|_______|
|_____|______|       |
|_____|______|_______|
|_____|______|_______|

возможно из за ввода данных, но я никак не в курю, где я их ввожу ) т.е. я уже вывесл секции теперь мне их нужно объединить. и продолжить цикл вывода секций.

Т.ВывестиСекцию("Период");
Ячейки = "R1"+"C7"":R"+n+"C7";
Обл = Т.Область(Ячейки);
Обл.Объединить();
4 furia
 
19.07.12
01:20
+(3) а в 2 нет решения по объединению =(
5 zladenuw
 
19.07.12
01:21
может присоединить ?
6 izekia
 
19.07.12
01:25
(5) это не то
7 furia
 
19.07.12
01:25
подожду до утра может кто поможет.
8 izekia
 
19.07.12
01:26
хм, может в терминале есть семерка
9 izekia
 
19.07.12
01:31
не, нет ... а какого типа у тебя получается Обл = Т.Область(Ячейки)?
10 КонецЦикла
 
19.07.12
01:39
Область(<R1>,<C1>,<R2>,<C2>)
11 zladenuw
 
19.07.12
02:55
(10) то данный метод автоматически объединяет выбранные ячейки ? так ?
12 КонецЦикла
 
19.07.12
02:57
(11) Типа того
13 zladenuw
 
19.07.12
03:00
хм. чего автор пропусил (2).
14 Тихий омут
 
19.07.12
04:48
(0) это у тебя что такое - "R1"+"C7"":R"+n+"C7" ? зачем кавычка в центре?
(11) этот метод НЕ объединяет ячейки, но позволяет работать с областью как с единым целым.
создай пустую обработку и посмотри работу этого кода:
   Таб=СОздатьОбъект("Таблица");
   Таб.Вывести();
   Обл=Таб.Область(1,1,1,1);
   Обл.Текст="1111";
   Обл=Таб.Область(2,1,2,1);
   Обл.Текст="222";        
   
   Обл=Таб.Область(1,1,1,1);
   Сообщить(Обл.Текст);
   
   Обл=Таб.Область(2,1,2,1);
   Сообщить(Обл.Текст);

   Обл=Таб.Область(1,1,2,1);
   Сообщить(Обл.Текст);

   Обл=Таб.Область(1,1,2,1);
   Обл.Текст="333";        

   Обл=Таб.Область(1,1,2,1);
   Сообщить(Обл.Текст);
   
   Обл.Объединить();  
   Сообщить(Обл.Текст);
15 zladenuw
 
19.07.12
04:55
а в кратце ? я получаю вывод нескольких областей и в итоге получаю объединенные все ? или нет ? если в теории сп
16 Тихий омут
 
19.07.12
04:58
а подумать не комильфо? )))
17 zladenuw
 
19.07.12
04:59
а ответить :) вопрос то правильно задан в (15)
18 zladenuw
 
19.07.12
05:00
там или да или нет :)
19 big
 
19.07.12
05:23
Таб = СоздатьОбъект("Таблица");
Таб.ИсходнаяТаблица("Таблица");
Таб.ВывестиСекцию("Строка");

ТабОбл = Таб.Область("R1"+"C7:R3"+"C7");
ТабОбл.Объединить();

Таб.Показать("проба с объединением");


рабочий код. Только что проверил
20 Тихий омут
 
19.07.12
05:38
21 Тихий омут
 
19.07.12
05:39
кибенематика, ей богу
22 Junior1s
 
19.07.12
08:15
(19) да спасибо.
Но я так понял что если св-во ячейки Выражение то уже объединение не пашет. только с текстом работает, или нет ?
23 Rie
 
19.07.12
08:18
(22) Объединению - начхать. Работает.
Вопрос в том, которая из объединяемых ячеек у Вас - "Выражение". Если не первая - то звиняйте, бананьев нету.
24 Junior1s
 
19.07.12
08:36
(23) как это может быть не первая ?
у меня секция в одну строку, в ней эта ячейка св-ом Выражение. я делаю цикл по ТЗ вывожу эту секцию, после хочу объединить нужную мне область. вот весь код

Для j = 1 По КолПериодов Цикл
n = 0;
БИ.ПериодМ(ТекПериод,Год);
Для i = 1 По КС Цикл //КС КолСтрок в ТЗ
  Эл = ТЗ.ПолучитьЗначение(i,"Сотр");
 _Дата = ТЗ.ПолучитьЗначение(i,"ДатаДок");
 Если (Эл = Сотр) и (ДатаМесяц(_ДатаДок) = ДатаМесяц(ТекПериод)) Тогда
   n = n + 1;
   Уплачено = Уплачено + ТЗ.Сумма;
   НомДок = НомДок + СокрЛП(ТЗ.База.ПолучитьЗначение(i,"Док");
 КонецЕсли;
КонецЦикла;
Начислено = БИ.КО(Счет,1,,,Сотр);
Т.ВывестиСекцию("Период");
Обл = Т.Область("R16"+"C7:R"+n+"C7);
Обл.Объединить();
ТекПериод = ДобавитьМесяц(ТекПериод,1);
КонецЦилка;
Т.ВывестиСекцию("Подвал");
....
Т.Показать("Бал бла бла");

З.Ы. писал в ручную, мог где нибудь опечатся...
25 big
 
19.07.12
08:46
Обл = Т.Область("R16"+"C7:R"+n+"C7);

а почему всегда начальная строка 16 ???
26 Junior1s
 
19.07.12
08:49
(25) да уже воткнул, хоть увидеть как оно отработает...
27 big
 
19.07.12
08:51
(26) воткни из (19) чтобы разобраться. А вообще надо что-то похожее на это

Т.ВывестиСекцию("Период");
НачСтрока = т.ВысотаТаблицы();
Обл = Т.Область("R"+НачСтрока+"C7:R"+n+"C7);
Обл.Объединить();
28 dk
 
19.07.12
08:52
имхо автор пытался объединить до вывода области
т.е. сначала нужно вывести, а уже потом объединять
29 Junior1s
 
19.07.12
08:56
(28) нет.
(27) ок. спасибо. да, что то с начальной строкой не то, буду пробовать...
30 Ёпрст
 
19.07.12
08:57
(24) не надо объединять ничего, и..лучше избавиться от всех объединенных ячеек - это смерть для мокселя.
делай так, примерно:

http://webfile.ru/6043577
31 dk
 
19.07.12
08:57
(29) ты автор что ли?
32 Junior1s
 
19.07.12
09:05
(30) а если нужно что то типо этого

|_____|______|_______|
|_____|______|       |
|_____|______|       |
|_____|______|_______|
|_____|______|_______|
|_____|______|_______|
|_____|______|       |
|_____|______|_______|
33 Ёпрст
 
19.07.12
09:07
(32) такое нужно очень редко, при скролинге - часть буковок "потеряется" в объединенных ячеек.
34 Junior1s
 
19.07.12
09:08
или хотя бы вот так
|_____|_____|______|
|     |     |      |
|_____|_____|______|
|_____|_____|______|
|     |     |      |
|     |     |      |
|_____|_____|______|
|_____|_____|______|