Этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
«На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
Политика конфиденциальности
|
|
|
Как объединить 2 динамических массива в VBA
|
|||
|---|---|---|---|
|
#18+
Please, подскажите как объединить 2 динамических массива в VBA. Массив № 1 имеет N произвольное количество элементов, Массив № 2 имеет M произвольное количество элементов. Мне нужно получить Массив № 3, который с 1 по N должен иметь одинаковые элементы с Массивов № 1, а начиная с N+1 по N+M должен иметь одинаковые элементы с Массивов № 2. Как это делается я забыл. Заранее благодарю за скорейший ответ! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.10.2010, 08:17 |
|
||
|
Как объединить 2 динамических массива в VBA
|
|||
|---|---|---|---|
|
#18+
Komil_, Код: plaintext 1. 2. 3. хотя задание воспринимается весьма туго ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.10.2010, 08:40 |
|
||
|
Как объединить 2 динамических массива в VBA
|
|||
|---|---|---|---|
|
#18+
ПЕНСИОНЕРКАKomil_, Код: plaintext 1. 2. 3. хотя задание воспринимается весьма туго Мне нужно объединить массива в VBA , а не в таблицах. Как в таблицах я знаю! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.10.2010, 08:48 |
|
||
|
Как объединить 2 динамических массива в VBA
|
|||
|---|---|---|---|
|
#18+
Komil_, Объявляете третий массив с длинной суммой этих двух Или копимемори или перебором пихаете туда элементы В чем проблема? Код: plaintext ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.10.2010, 08:52 |
|
||
|
Как объединить 2 динамических массива в VBA
|
|||
|---|---|---|---|
|
#18+
точнее даже правильнее так Код: plaintext ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.10.2010, 08:55 |
|
||
|
Как объединить 2 динамических массива в VBA
|
|||
|---|---|---|---|
|
#18+
ShamanusKomil_, Объявляете третий массив с длинной суммой этих двух Или копимемори или перебором пихаете туда элементы В чем проблема? Код: plaintext А что означает "копимемори"? Это как? Я прошу прошения, но я не знаток по VBA. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.10.2010, 08:55 |
|
||
|
Как объединить 2 динамических массива в VBA
|
|||
|---|---|---|---|
|
#18+
Komil_, Копимемори это функция АПИ MSDNСовет 171. Используйте функцию CopyMemory из Win32 API При разработке приложений довольно часто встречается простая задача пересылки N последовательных байтов из одной области оперативной памяти в другую. В VB проблема возникает, когда такая область памяти определена не именем переменной, а в виде адреса (указателя — Pointer). К сожалению, встроенные средства VB не позволяют работать с адресами, а порой это крайне необходимо. Так, некоторые функции Win API, используемые для получения информации о ресурсах системы (например, VerQueryValue), возвращают в качестве параметра адрес области памяти FiAddr&, где лежит искомая информация. Но как переписать эти данные, к примеру, в целочисленный массив для дальнейшей обработки в среде VB? Это можно сделать с помощью функций Win API. В составе Win16 API для этого имелась функция HMemCpy: Листинг 1. Код: plaintext 1. Она появилась только в расширенном варианте функций в Windows 3.1 (в версии 3.0 ее не было), а в пакете VB 3.0 ее описание было приведено только в файле WIN31WH.HLP. Что же касается Win32 API, то в описании WIN32API.TXT для VB 4.0 и 5.0 о функции HMemCpy или ее аналоге даже и не упоминается. Более того, в книге Дэна Эпплмана по Win32 API, на которую мы часто ссылаемся (о ней мы писали в Совете 133), ничего не говорится о подобной функции. Однако, поскольку такая функция действительно очень нужна, Дэн предлагает использовать процедуру agCopyData из его собственной библиотеки APIGI32.DLL, которая приводится на прилагаемом компакт-диске. Все это выглядит весьма странно. Более тщательный поиск, проведенный с помощью специалиста московского отделения Microsoft Юрия Томашко, увенчался успехом — в Win32 есть функция копирования байтов CopyMemory и ее описание появилось в VB 6.0 в файле WIN32API.TXT. Почему Microsoft скрывает от пользователей VB 4.0 и 5.0 ее существование, и почему Дэн Эпплман хранит эту тайну — можно только гадать. Кстати, настоящее имя функции в библиотеке KERNEL32 — RtlMoveMemory: Листинг 2. Код: plaintext 1. 2. 3. Вот типичный пример применения этой функции: Листинг 3. Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. Листинг 4. Код: plaintext 1. 2. 3. 4. 5. 6. 7. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.10.2010, 08:58 |
|
||
|
Как объединить 2 динамических массива в VBA
|
|||
|---|---|---|---|
|
#18+
Shamanus, Спасибо большое! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.10.2010, 09:20 |
|
||
|
|

start [/forum/topic.php?fid=60&msg=36893880&tid=2159361]: |
0ms |
get settings: |
9ms |
get forum list: |
12ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
44ms |
get topic data: |
9ms |
get forum data: |
2ms |
get page messages: |
49ms |
get tp. blocked users: |
2ms |
| others: | 11ms |
| total: | 146ms |

| 0 / 0 |
