Страницы: 1
RSS
как правильно удалить 1 элемент из массива сохранением всех остальных значений VBA
 
Вот часть моего кода.  
 
работает не так как задумывалось.  
 
ReDim Preserve IArrow(x)  
IArrow(x) = IArrow(x)  
x = x - 1  
 
Заранее спасибо
 
http://www.planetaexcel.ru/forum.php/tips.php?thread_id=8548  
 
А также  
http://yandex.ru/sitesearch?text=удалить+элемент+массива&searchid=84804
 
что то я не понял... Подскажите Вы если знаете как правильно и  коротко удалить элемент из массива.  
 
заранее спасибо.
 
С помощью Redim можно удалить только последние элементы (в случае многомерного массива - только последние элементы последней размерности). F1 - Redim.  
В других случаях надо писать цикл для перекладывания элементов.  
Удаление последнего элемента:  
 
ReDim Preserve IArrow(ubound(IArrow)-1)
 
так можно удалить из цикла в цикл  
x=5' удаляемый элемент  
redim arrF(1 to ubound(arr)-1):y=1  
for i = 1 to ubound(arr)  
if i<>x then arrF(y)= arr(i):y=y+1    
next
Спасибо
 
ну накрутили..  :)  
n=5' удаляемый элемент  
for i=n to ubound(arr)-1  
arr(i)=arr(i+1)  
next  
redim preserve arr(lbound(arr) to i-1)
Живи и дай жить..
 
{quote}{login=слэн}{date=17.12.2010 02:59}{thema=}{post}ну накрутили..  :)  
n=5' удаляемый элемент  
for i=n to ubound(arr)-1  
arr(i)=arr(i+1)  
next  
redim preserve arr(lbound(arr) to i-1){/post}{/quote}  
Старался...... :)  
 
зы на заметку взял
Страницы: 1
Читают тему
Наверх