Гость
Форумы / Visual Basic [игнор отключен] [закрыт для гостей] / Функции Application.Index(...) / 12 сообщений из 12, страница 1 из 1
24.04.2013, 09:33
    #38237606
Дима Г
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Функции Application.Index(...)
Уважаемые программисты, подскажите, пожалуйста, где можно посмотреть описание функции Application.Index(...). C помощью этой функции можно получить массив значений столбца элемента управления.
Например, Application.Index(Список.Column, 1), возвращает массив первого столбца списка. Одна проблема, индексация массива начинается с 1. Хотелось бы с 0 или с любого. Возможно ли это сделать?
Используя функцию Application.Index, циклы не нужны.
Спасибо.
...
Рейтинг: 0 / 0
24.04.2013, 11:30
    #38237807
HandKot
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Функции Application.Index(...)
Дима Г,
Код: vbnet
1.
Option Base {0 | 1} ?

НО либо, либо
...
Рейтинг: 0 / 0
24.04.2013, 12:13
    #38237931
Дима Г
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Функции Application.Index(...)
HandKotДима Г,
Код: vbnet
1.
Option Base {0 | 1} ?

НО либо, либо

Не помогло. Эффект тот же.
...
Рейтинг: 0 / 0
24.04.2013, 12:22
    #38237950
AndreTM
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Функции Application.Index(...)
А чем именно не устраивает нумерация с 1?
...
Рейтинг: 0 / 0
24.04.2013, 12:28
    #38237968
Дима Г
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Функции Application.Index(...)
AndreTMА чем именно не устраивает нумерация с 1?

Необходима "согласованность" с другими ранее написанными функциями, индексы в массивах которых начин. с 0.
...
Рейтинг: 0 / 0
24.04.2013, 12:42
    #38237997
AndreTM
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Функции Application.Index(...)
Можно модифицировать старые функции на предмет учёта опционального параметра LowerBound или глобальной переменной LowerIndex.
Можно написать свой класс для работы с Application.Index , где вы будете подменять индекс.
...
Рейтинг: 0 / 0
24.04.2013, 12:54
    #38238030
Казанский
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Функции Application.Index(...)
Дима ГОдна проблема, индексация массива начинается с 1. Хотелось бы с 0 или с любого. Возможно ли это сделать?
Возможно :)
Код: vbnet
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
Private Declare Sub CopyMem Lib "kernel32" Alias "RtlMoveMemory" (Dst As Any, Src As Any, ByVal Length As Long)
Private Declare Function VarPtrArr Lib "msvbvm60" Alias "VarPtr" (arr() As Any) As Long

Private Sub UserForm_Initialize()
Dim v(), ptrVSA&
v = Application.Index(ListBox1.Column, 1)

CopyMem ptrVSA, ByVal VarPtrArr(v), 4   'ptrVSA - указатель на структуру SafeArray массива v
CopyMem ByVal ptrSA + 20, -2&, 4        'LBound имеет смещение +20 от начала структуры
                                        'теперь индексация начинается с -2
End Sub
...
Рейтинг: 0 / 0
24.04.2013, 12:57
    #38238036
Казанский
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Функции Application.Index(...)
Поправка: ... ptrVSA+20 ...
...
Рейтинг: 0 / 0
24.04.2013, 13:11
    #38238071
Дима Г
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Функции Application.Index(...)
Казанский,

Спасибо!
Пока не попробовал. Код простой и наверное через API быстрый.
...
Рейтинг: 0 / 0
24.04.2013, 22:37
    #38239160
Дима Г
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Функции Application.Index(...)
Казанский,

Все работает. ОК.
...
Рейтинг: 0 / 0
Период между сообщениями больше года.
28.03.2021, 22:25
    #40057620
rick1177
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Функции Application.Index(...)
Казанский, добрый день.
А научите, пожалуйста, пользоваться Вашим решением.
Что-то не могу сообразить что и куда засовывать и что вообще здесь написано ))

Прошу подсказки для неумех.
...
Рейтинг: 0 / 0
31.03.2021, 15:33
    #40058558
Eolt
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Функции Application.Index(...)
rick1177,

В отвечаете на пост который был написан 8 лет назад. Автора может уже и в живых нет.
...
Рейтинг: 0 / 0
Форумы / Visual Basic [игнор отключен] [закрыт для гостей] / Функции Application.Index(...) / 12 сообщений из 12, страница 1 из 1
Целевая тема:
Создать новую тему:
Автор:
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]