PDA

Показать полную графическую версию : [решено] Динамическое построение двумерного массива


McLotos
03-11-2013, 00:35
Добрый вечер. Вытягивая данные из AD я получаю список компьютеров, но хотелось бы получать удобный массив. Весь вечер долбался, но нормально срабатывает только создание одномерного массива, а хотелось бы получить массив примерно такого типа
Computers(num,1)=1PC
Computers(num,2)=2PC
Computers(A,1)=Andrey
Computers(A,2)=ALex
и т.д. по алфавиту
Ну т.е. чтобы в дальнейшем можно было получать не весь массив а только какую-то его часть, например передавать первую букву и получать все компьютеры начинающиеся на эту букву.
В данный момент я остановился на таком варианте кода
If IsNumeric(Left(adoRecordset.Fields("name").Value,1)) Then
num=num+1
Else
.......

А дальше стоит огромный Select Case со всеми возможными вариантами букв, при чем по 2 раза, потому-что функция StrComp() почему-то никак не хочет срабатывать. т.е. если я пишу что-то типа
StrComp(Left(adoRecordset.Fields("name").Value,1),"A")=1, то компьютеры начинающиеся с маленькой буквы почему-то не попадают в этот список. и под каждую букву сначала создаётся переменная a=0, b=0 и т.д., потом они догоняются до a=количество машин на А
и дальше, такая же конструкция
If IsNumeric(Left(adoRecordset.Fields("name").Value,1)) Then

Else
.......

уже забивает полученные массивы с размерами нужными данными.
Подскажите как можно не создавая портянку из кода, грамотно создать двумерный массив по аналогии с тем, который я представил выше. Заранее спасибо.




© OSzone.net 2001-2012