Вход | Регистрация
 
1С:Предприятие :: 1С:Предприятие 7.7 и ранее

v7: Программное объединение ячеек

v7: Программное объединение ячеек
Я
   zenon46
 
30.10.20 - 17:47
Доброго вечера, прошу подсказать как можно программно объединить ячейки в печатной форме таблицы, со структурой как на примере, грубо говоря нужно объеденить по кладовщику и складу, один и тот же кладовщик может быть на разных складах в случае если он к примеру пошел на подмогу) Уж больно я запутался в написании "правильного" алгоритма.

Склад | Кладовщик    | Товар | масса | примечание
............................................................
      |              | 1      | 1     | 1
                     .......................................
знач1 | имя1         | 2      | 2     | 2
                     .......................................
      |              | 3      | 3     | 3
............................................................
      | имя2         | 1      | 1     | 1
                     .......................................
знач2 |              | 2      | 2     | 2
............................................................
      | имя3         | 1      | 1     | 1
                     .......................................
знач3 |              | 2      | 2     | 2
............................................................
      | имя2         | 1      | 1     | 1
                     .......................................
знач3 |              | 2      | 2     | 2
............................................................
   HawkEye
 
1 - 30.10.20 - 18:54
(0) объеденять ячейки надо с помощью метода:
Объединить()
Синтаксис:
Объединить()
Назначение:
Объединить ячейки области.
Замечание:
Данный метод нельзя использовать при работе с областью таблицы в режиме ввода данных.
   zenon46
 
2 - 30.10.20 - 18:58
(1) ))) пасиб, с этим я справился, не получается алгоритм по двум полям реализовать, по одному полю работает, а вот что бы по двум сразу не особо выходит. Особенно когда :

      | имя2         | 1      | 1     | 1
                     .......................................
знач2 |              | 2      | 2     | 2
............................................................
      | имя2         | 1      | 1     | 1
                     .......................................
знач3 |              | 2      | 2     | 2
............................................................
   HawkEye
 
3 - 30.10.20 - 19:01
(2) так вестимо дело не в объеденении, а в алгоритме, может стоит задуматься над заголовоком темы??)))
   zenon46
 
4 - 30.10.20 - 19:01
(3) согласен тему назвал не правильно но в (1) "Уж больно я запутался в написании "правильного" алгоритма." и расписал.
   HawkEye
 
5 - 30.10.20 - 19:05
(4) так задача то в чем?! ну пошел он на второй склад и что? как это в отчете то должно быть? при чем тут объединение?
   zenon46
 
6 - 30.10.20 - 20:13
| имя2         | 1      | 1     | 1
                     .......................................
знач2 |              | 2      | 2     | 2
............................................................
      | имя2         | 1      | 1     | 1
                     .......................................
знач3 |              | 2      | 2     | 2
............................................................

(5) кажется я тут все наглядно показал, внимательней посмотрите. Сейчас делаю по одному полю вот так, но такой алгоритм сработает не правильно в случае когда идут одинаковые кладовщики по разным складам :

    Для СчетчикСтрок = 2 По Выборка.КоличествоСтрок() Цикл
        Если (Таб.Область("R"+СчетчикСтрок+"C3").Текст = Таб.Область("R"+Строка(СчетчикСтрок-1)+"C3").Текст) ИЛИ (ОбъединениеНачало = СчетчикСтрок) Тогда 
            Продолжить;
        Иначе
            Таб.Область("R"+ОбъединениеНачало+"C3"+":"+"R"+Строка(СчетчикСтрок-1)+"C3").Объединить();
            ОбъединениеНачало = СчетчикСтрок;
        КонецЕсли;
    КонецЦикла;

Список тем форума
Рекламное место пустует  Рекламное место пустует
Независимо от того, куда вы едете — это в гору и против ветра!
ВНИМАНИЕ! Если вы потеряли окно ввода сообщения, нажмите Ctrl-F5 или Ctrl-R или кнопку "Обновить" в браузере.