Как сохранить элементы массива в ячейках листа Excel с помощью TCL / tcom - PullRequest
0 голосов
/ 06 марта 2012

Я хочу хранить элементы массива в листе Excel. Как я могу это сделать? Вот пример кода для массива:

for {set i 0} { $i < 3} {incr i} {
    set color($i) $i    
}

Теперь, как я могу сохранить цвет (0), цвет (1), цвет (2) в разных ячейках?

Edit: Основываясь на этом примере tcom Я пытался сохранить элементы массива в листе Excel.

1 Ответ

2 голосов
/ 06 марта 2012

Посмотрите на команды array set и array get.

for {set i 0} { $i < 3} {incr i} {
    set color($i) $i    
}

set nvList [array get color]

Переменная nvList теперь имеет значение 0 0 1 1 2 2 (обратите внимание на комментарии). С array get вы получаете представление имени-значения массива. Если вы позвоните array set, вы можете снова преобразовать nvList в массив.

Это то, что тебе нужно?

Редактировать: Еще один пример на основе вашего комментария:

# building example array with 100 elements
for {set r 1} {$r <= 100} {incr r} {
    set color($r) $r
}

set rows [array size color]
set columns {A B C}

for {set row 1} {$row <= $rows} {incr row} {
    foreach column $columns {
        $cells Item $row $column $color($row)
    }
}

Редактировать: Еще один (второй) пример на основе вашего комментария:

array set atten {...}
array set transmit {...}

set rows [array size atten]
for {set row 1} {$row <= $rows} {incr row} {
    $cells Item $row "B" $atten($row)
} 

set rows [array size transmit]
for {set row 1} {$row <= $rows} {incr row} {
    $cells Item $row "C" $transmit($row)
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...