Что нового

Разложить массив на отдельные переменные

DOMINANT

Новичок
Сообщения
42
Репутация
0
Приветствую коллеги! Подскажите как результат переменной $eRangeFind разложить на переменные, то есть на выходе мы получаем от переменной массив из 1 строки и 6 столбцами, нужно значение каждого столбца записать в отдельную переменную $column1 = "", $column2 = "" и.т.д

Код:
#include <Array.au3>
#include <Excel.au3>

$oExcel = _Excel_Open()
$oWorkbook = _Excel_BookOpen($oExcel, @ScriptDir & "\123.xlsx") ; Открытие файла 
$eRangeFind = _Excel_RangeFind($oWorkbook, "1/14", "B1:B999") ; Поиск значения 1/14
_ArrayDisplay($eRangeFind, "Результат", "", 32, ",", "Лист|Имя|Ячейка|Значение|Формула|Примечание") ; Вывод результата на экран
 

hedji

Продвинутый
Сообщения
409
Репутация
94
Код:
$column1 = $eRangeFind[0]
$column2 = $eRangeFind[1]
$column3 = $eRangeFind[2]
$column4 = $eRangeFind[3]
$column5 = $eRangeFind[4]
$column6 = $eRangeFind[5]


OffTopic:

А зачем? Почему не использовать просто $eRangeFind[] ?
 
Автор
DOMINANT

DOMINANT

Новичок
Сообщения
42
Репутация
0
Так не работает

Код:
#include <Array.au3>
#include <Excel.au3>

$oExcel = _Excel_Open()
$oWorkbook = _Excel_BookOpen($oExcel, @ScriptDir & "\123.xlsx") ; Открытие файла
$eRangeFind = _Excel_RangeFind($oWorkbook, "1/14", "B1:B999") ; Поиск значения 1/14
_ArrayDisplay($eRangeFind, "Результат", "", 32, ",", "Лист|Имя|Ячейка|Значение|Формула|Примечание") ; Вывод результата на экран
$column1 = $eRangeFind[0]
$column2 = $eRangeFind[1]
$column3 = $eRangeFind[2]
$column4 = $eRangeFind[3]
$column5 = $eRangeFind[4]
$column6 = $eRangeFind[5]
 MsgBox(0, "Результат", $column3)


Имеете ввиду так $eRangeFind[3]? Выдаст значение 3 столбца ?


Добавлено:
Сообщение автоматически объединено:

Вот так получилось так как у нас формально двумерный массив 1 строка и 6 столбцов $eRangeFind[0][4] в меседж бокс выводится нужное значение

Код:
#include <Array.au3>
#include <Excel.au3>

$oExcel = _Excel_Open()
$oWorkbook = _Excel_BookOpen($oExcel, @ScriptDir & "\123.xlsx") ; Открытие файла
$eRangeFind = _Excel_RangeFind($oWorkbook, "1/14", "B1:B999") ; Поиск значения 1/14
_ArrayDisplay($eRangeFind, "Результат", "", 32, ",", "Лист|Имя|Ячейка|Значение|Формула|Примечание") ; Вывод результата на экран
MsgBox(0, "Результат", $eRangeFind[0][4])
 
Верх