Как создать индекс с помощью LibreOffice Calc (без макроса)

Мне нужно создать список элементов в LibreOffice Calc с описанием и ценой; на другом листе мне нужно сгруппировать определенные элементы и сделать общую строку.

Мой список элементов имеет следующие идентификаторы (1,2,4,8,... 32,64,128 и т. д.). Таким образом, когда я суммирую 2 или более элементов, я получаю уникальный идентификатор, этот полученный таким образом идентификатор описывает, какие элементы он состоит из одной строки, поэтому ID 7 является суммой первых трех.

Мне нужно ввести эти идентификаторы на одном листе и посмотреть общую цену в ближайшей ячейке, давайте сделаем пример с числами:

Sheet 1
 1 Price 10
 2 Price 35
 4 Price 80
 8 Price 16
16 Price  8
32 Price 29

Sheet 2
 7 Total Price 125
18 Total Price  43
35 Total Price  74

person S. Redrum    schedule 01.09.2017    source источник


Ответы (1)


Это уродливо, но может дать вам что-то для развития. Сначала список в Sheet1 должен быть в обратном порядке. Я добавил 64 в A1 (0 в C1), затем 32 в A2 и т. д.

В Sheet2 (где 7 находится в A2 и т. д.) в D2 и скопировано вниз по размеру:

=BASE(A2,2,7)

(Возможно, вам придется увеличить 7, в зависимости от того, сколько у вас Total Price.)

Затем в ColumnD Text to Columns... фиксированная ширина и анализ (стандартный) в каждой позиции символа.

Наконец, в L2 и скопировано по размеру:

=SUMPRODUCT(Sheet1.C$1:C$7,TRANSPOSE(D2:J2))
person pnuts    schedule 08.09.2017