Как вы удаляете полезные значения из многомерного массива VBA? - PullRequest
0 голосов
/ 04 октября 2011

Функция возвращает 4-мерный массив в виде (j, 0) (i, 0).Хотите преобразовать это в 2-мерный массив в форме (j, i).Как переместить значения i в слот, ограниченный рядом с j, а затем изменить размер массива, чтобы удалить «лишние» два измерения?

1 Ответ

4 голосов
/ 04 октября 2011

Разделение вашего вопроса на две части:

1. Как переместить значения i в слот, ограниченный рядом с j

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

2. а затем изменить размер массива, чтобы удалить «лишние» два измерения?

Это невозможно - или, по крайней мере, без стирания содержимого массива. Вы можете удалить плоские размеры, используя ReDim, но удаляете все данные, содержащиеся в массиве, что наносит ущерб вашей цели.

Вот почему я заставил вас создать новый массив в части 1 выше.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...