Доброго дня Всем. Можно ли создать массив с различными типами данных? Допустим имеется массив 3 на 4. Три строки и четыре колонки. Хотелось бы, чтобы первая и вторая строка были типа по дабл, а третья строка типа string. Я знаю, что можно создать массив с универсальными типами данных. Но мне это "не подходит". Спасибо _______________ Юрий.
Доброго дня Всем. Можно ли создать массив с различными типами данных? Допустим имеется массив 3 на 4. Три строки и четыре колонки. Хотелось бы, чтобы первая и вторая строка были типа по дабл, а третья строка типа string. Я знаю, что можно создать массив с универсальными типами данных. Но мне это "не подходит". Спасибо _______________ Юрий.Юрий_Нд
Если предполагается обмен с рабочим листом, то нет смысла уходить от двумерного массива типа Variant ("универсального"). При этом в процессе обработки можно повышенно контролировать тип присваиваемых значений при помощи конвертирующих функций и таким образом обеспечить построчную "однотипность" элементов массива: [vba]
[/vba] Тип любого имеющегося элемента массива можно проверить при помощи функций VarType() или TypeName().
Если обмен с рабочим листом не предполагается, то имхо проще создать отдельные массивы соответствующего типа для каждой строки. Либо, если ТС расскажет о задаче подробнее, может, вообще нарисуется решение в кардинально другой плоскости.
Если предполагается обмен с рабочим листом, то нет смысла уходить от двумерного массива типа Variant ("универсального"). При этом в процессе обработки можно повышенно контролировать тип присваиваемых значений при помощи конвертирующих функций и таким образом обеспечить построчную "однотипность" элементов массива: [vba]
[/vba] Тип любого имеющегося элемента массива можно проверить при помощи функций VarType() или TypeName().
Если обмен с рабочим листом не предполагается, то имхо проще создать отдельные массивы соответствующего типа для каждой строки. Либо, если ТС расскажет о задаче подробнее, может, вообще нарисуется решение в кардинально другой плоскости.Gustav
Мне хотелось бы, чтобы это было дополнительной подсказкой от ошибок. Если я, допустим, захочу случайно записать стринговую переменную в тип данных Double, Excel подскажет мне, что "здесь что-то не в порядке". -----------------------------------------------------------------
Насколько я понимаю, Excel самостоятельно определяет тип данных. В любом случае большое спасибо, но к сожалению, повторюсь, что мне хотелось бы самостоятельно и заранее определять тип данных.
Мне хотелось бы, чтобы это было дополнительной подсказкой от ошибок. Если я, допустим, захочу случайно записать стринговую переменную в тип данных Double, Excel подскажет мне, что "здесь что-то не в порядке". -----------------------------------------------------------------
Насколько я понимаю, Excel самостоятельно определяет тип данных. В любом случае большое спасибо, но к сожалению, повторюсь, что мне хотелось бы самостоятельно и заранее определять тип данных.Юрий_Нд
Сообщение отредактировал Юрий_Нд - Воскресенье, 10.11.2019, 13:26
... создать отдельные массивы соответствующего типа для каждой строки
Так я и делал, до обращения на форум. Но сегодня подумал, возможно можно сделать как-то лучше... Получается что нельзя. В любом случае большое спасибо.
Уважаемые bmv98rus, doober, Gustav. Спасибо за ответы.
... создать отдельные массивы соответствующего типа для каждой строки
Так я и делал, до обращения на форум. Но сегодня подумал, возможно можно сделать как-то лучше... Получается что нельзя. В любом случае большое спасибо.Юрий_Нд