|
обращение к массиву с текстом вместо индекса
|
|||
---|---|---|---|
#18+
Народ, помогите пожалуйста. В двумерный массив хочу посчитать сумму при условии совпадения названий филиала и вида. Без прочих циклов и сравнений: fil = Cells(I, 2) vid = Cells(I, 3) pl(fil, vid) = pl(fil, vid) + Cells(I, 1) Непонятно как объявить массив pl - в виде индексов везде подразумевают только числа. Спасибо. ... |
|||
:
Нравится:
Не нравится:
|
|||
26.04.2011, 17:52 |
|
обращение к массиву с текстом вместо индекса
|
|||
---|---|---|---|
#18+
создайте коллекцию на основе своего собственного класса. сделайте индекс у коллекции строкового типа ... |
|||
:
Нравится:
Не нравится:
|
|||
26.04.2011, 18:00 |
|
обращение к массиву с текстом вместо индекса
|
|||
---|---|---|---|
#18+
Konst_One, не понял - в коллекции нужно перечислять все возможные значения? Не хотелось бы. ... |
|||
:
Нравится:
Не нравится:
|
|||
26.04.2011, 18:08 |
|
обращение к массиву с текстом вместо индекса
|
|||
---|---|---|---|
#18+
celentanoKonst_One, не понял - в коллекции нужно перечислять все возможные значения? Не хотелось бы. Коллекция - это типа массив, где к элементу возможно обратиться не только по индексу, но и по имени. Почитайте про них любой онлайн-учебник или хелп - там все предельно просто. ... |
|||
:
Нравится:
Не нравится:
|
|||
26.04.2011, 18:14 |
|
обращение к массиву с текстом вместо индекса
|
|||
---|---|---|---|
#18+
почитать не помогает, а есть какой-нибудь простой кусочек программы по созданию коллекции? ... |
|||
:
Нравится:
Не нравится:
|
|||
26.04.2011, 18:55 |
|
обращение к массиву с текстом вместо индекса
|
|||
---|---|---|---|
#18+
celentanoпочитать не помогает Бедааааааа celentano а есть какой-нибудь простой кусочек программы по созданию коллекции? Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12.
... |
|||
:
Нравится:
Не нравится:
|
|||
26.04.2011, 19:03 |
|
обращение к массиву с текстом вместо индекса
|
|||
---|---|---|---|
#18+
Shocker.Pro, это одномерная коллекция, а если у меня двумерный массив, то под второй индекс создавать другую коллекицю? ... |
|||
:
Нравится:
Не нравится:
|
|||
26.04.2011, 19:39 |
|
обращение к массиву с текстом вместо индекса
|
|||
---|---|---|---|
#18+
celentanoShocker.Pro, это одномерная коллекция, а если у меня двумерный массив, то под второй индекс создавать другую коллекицю? Зачем? Кто мешает использовать двойной индекс в одном? Это же текстовая строка, туда можно че угодно запихать (единственное ограничение - не может ключ начинаться с цифры) Код: plaintext
... |
|||
:
Нравится:
Не нравится:
|
|||
26.04.2011, 19:43 |
|
обращение к массиву с текстом вместо индекса
|
|||
---|---|---|---|
#18+
Shocker.Pro, а вот если сцепка fil_vid повторяется, то нарушение уникальности индекса ) Вообще как то так или вообще не так?) Dim fil_vid As New Collection n = Cells(15, 1).End(xlDown).Row For I = 15 To n fil_vid.Add Cells(I, 2), Cells(I, 2) & " " & Cells(I, 3) Next I For I = 15 To n fil_vid(fil & " " & vid) = fil_vid(fil & " " & vid) + Cells(I, 11) Next I ... |
|||
:
Нравится:
Не нравится:
|
|||
26.04.2011, 20:12 |
|
обращение к массиву с текстом вместо индекса
|
|||
---|---|---|---|
#18+
celentano, зачем в два прохода? Добавляйте сразу сумму... Код: plaintext 1. 2. 3. 4. 5.
ЗЫ: про нарушение уникального индекса - это Вы здорово! ... |
|||
:
Нравится:
Не нравится:
|
|||
26.04.2011, 20:39 |
|
обращение к массиву с текстом вместо индекса
|
|||
---|---|---|---|
#18+
celentanoа вот если сцепка fil_vid повторяется, то нарушение уникальности индекса А что, в двумерном массиве у тебя тоже бывают нарушения уникальности индекса? :)) ... |
|||
:
Нравится:
Не нравится:
|
|||
27.04.2011, 00:40 |
|
обращение к массиву с текстом вместо индекса
|
|||
---|---|---|---|
#18+
Shocker.Pro, This key is already associated with an element of this collection Я так понял что создаваемый мною текстовый ключ (который вместо индекса) повторяется ... |
|||
:
Нравится:
Не нравится:
|
|||
27.04.2011, 09:57 |
|
обращение к массиву с текстом вместо индекса
|
|||
---|---|---|---|
#18+
celentanoShocker.Pro, This key is already associated with an element of this collection Я так понял что создаваемый мною текстовый ключ (который вместо индекса) повторяется Ключ, КАК И ИНДЕКС обычного массива , естественно повторяться не может, иначе как ты обратишься к нужному тебе элементу массива? Похоже, ты не совсем верно обозначил себе метод решения своей задачи. То есть как работать с текстовыми индексами я тебе подсказал, но на самом деле требуется нечто другое ... |
|||
:
Нравится:
Не нравится:
|
|||
27.04.2011, 11:05 |
|
обращение к массиву с текстом вместо индекса
|
|||
---|---|---|---|
#18+
Гм.. Гм.. > Автор: Shocker.Pro > (единственное ограничение - не может ключ начинаться с цифры) Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10.
ошибку Posted via ActualForum NNTP Server 1.4 ... |
|||
:
Нравится:
Не нравится:
|
|||
28.04.2011, 11:41 |
|
обращение к массиву с текстом вместо индекса
|
|||
---|---|---|---|
#18+
Игорь Горбонос, да, я ошибся Код: plaintext 1. 2.
У меня были проблемы с каким-то контролом типа ImageList или ListView, я думал, это касается всех коллекций ... |
|||
:
Нравится:
Не нравится:
|
|||
28.04.2011, 11:57 |
|
обращение к массиву с текстом вместо индекса
|
|||
---|---|---|---|
#18+
Да, вот такая штуковина не проходит: Код: plaintext
но Код: plaintext
А у простой коллекции вообще не наблюдается этой проблемы: Код: plaintext 1. 2. 3.
... |
|||
:
Нравится:
Не нравится:
|
|||
28.04.2011, 12:01 |
|
обращение к массиву с текстом вместо индекса
|
|||
---|---|---|---|
#18+
Shocker.ProВпрочем, в коллекцию можно добавлять в качестве элемента любой объект, в том числе другую коллекцию, это тоже никто не запрещает. Но не вижу большого смысла в этом. Ну как сказать - я это неплохо использую - у меня обработка контролов формы на этом с незапамятных времен построена... ... |
|||
:
Нравится:
Не нравится:
|
|||
29.04.2011, 13:55 |
|
|
start [/forum/topic.php?fid=60&msg=37240977&tid=2158753]: |
0ms |
get settings: |
9ms |
get forum list: |
14ms |
check forum access: |
5ms |
check topic access: |
5ms |
track hit: |
49ms |
get topic data: |
11ms |
get forum data: |
3ms |
get page messages: |
56ms |
get tp. blocked users: |
1ms |
others: | 348ms |
total: | 501ms |
0 / 0 |