Модераторы: mihanik
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> МАССИВ 
:(
    Опции темы
Izuver
Дата 29.11.2007, 18:51 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 352
Регистрация: 13.6.2006
Где: Омск

Репутация: 2
Всего: 2



Как удалить из массива элемент?
Соответственно он будет состоять из элементов на одно меньше.
PM MAIL ICQ   Вверх
Naghual
Дата 29.11.2007, 22:33 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1893
Регистрация: 15.5.2004
Где: Украина, Днепр

Репутация: 7
Всего: 49



Можно перебором элементов выполнить смещение и уничтожить последний.
Можно перенести в List и оперировать там.
Нужно больше информации о вашем конкретном массиве.


--------------------
Я желаю всем Счастья!
PM ICQ Skype   Вверх
kapbepucm
Дата 29.11.2007, 22:40 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 993
Регистрация: 14.6.2007
Где: Латвия

Репутация: 3
Всего: 12



ReDim


--------------------
(С) kapbepucm
PM MAIL Skype   Вверх
Naghual
Дата 29.11.2007, 23:10 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1893
Регистрация: 15.5.2004
Где: Украина, Днепр

Репутация: 7
Всего: 49



kapbepucm, если быть точным, то ReDim Preserve, иначе массив очиститься.
И данное действие применимо только если необходимо удалить последний элемент массива.


--------------------
Я желаю всем Счастья!
PM ICQ Skype   Вверх
Akina
Дата 29.11.2007, 23:18 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Советчик
****


Профиль
Группа: Модератор
Сообщений: 20581
Регистрация: 8.4.2004
Где: Зеленоград

Репутация: 26
Всего: 454



Izuver, используйте не массив, а коллекцию.


--------------------
 О(б)суждение моих действий - в соответствующей теме, пожалуйста. Или в РМ. И высшая инстанция - Администрация форума.

PM MAIL WWW ICQ Jabber   Вверх
kapbepucm
Дата 30.11.2007, 11:02 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 993
Регистрация: 14.6.2007
Где: Латвия

Репутация: 3
Всего: 12



Naghual, я имел ввиду нечто похожее на
Код
Private Sub DeleteElement(ByRef Arr, ByVal ElementNumber As Long)
  Dim A1() As Long, A2() As Long
  Dim I As Long
  Select Case ElementNumber
  Case LBound(Arr)
    ReDim A1(LBound(Arr) + 1 To UBound(Arr))
    For I = LBound(A1) To UBound(A1)
      A1(I) = Arr(I)
    Next I
    ReDim Arr(LBound(A1) To UBound(A1))
    For I = LBound(Arr) To UBound(Arr)
      Arr(I) = A1(I)
    Next I
  Case LBound(Arr) + 1 To UBound(Arr) - 1
    ReDim A1(LBound(Arr) To UBound(Arr))
    For I = LBound(Arr) To UBound(Arr)
      A1(I) = Arr(I)
    Next I
    ReDim Arr(LBound(Arr) To UBound(Arr) - 1)
    For I = LBound(Arr) To UBound(Arr)
      If I < ElementNumber Then
        Arr(I) = A1(I)
      Else
        Arr(I) = A1(I + 1)
      End If
    Next I
  Case UBound(Arr)
    ReDim Preserve Arr(LBound(Arr) To UBound(Arr) - 1)
  End Select
End Sub
Public Sub Test()
  Dim MyArr() As Long
  ReDim MyArr(1 To 10) As Long
  Dim I As Long
  For I = LBound(MyArr) To UBound(MyArr)
    MyArr(I) = I
  Next I
  DeleteElement MyArr, 1
End Sub



--------------------
(С) kapbepucm
PM MAIL Skype   Вверх
Akina
Дата 30.11.2007, 11:44 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Советчик
****


Профиль
Группа: Модератор
Сообщений: 20581
Регистрация: 8.4.2004
Где: Зеленоград

Репутация: 26
Всего: 454



А зачем такая груда кейсов? чем хуже
Код

Private Sub DeleteElement(ByRef Arr, ByVal ElementNumber As Long)
dim i as integer
for i = ElementNumber to UBound(Arr) - 1
   arr(i)=arr(i+1)
next i
ReDim Preserve Arr(LBound(Arr) To UBound(Arr) - 1)
End Sub



--------------------
 О(б)суждение моих действий - в соответствующей теме, пожалуйста. Или в РМ. И высшая инстанция - Администрация форума.

PM MAIL WWW ICQ Jabber   Вверх
kapbepucm
Дата 30.11.2007, 15:23 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 993
Регистрация: 14.6.2007
Где: Латвия

Репутация: 3
Всего: 12



smile Да smile


--------------------
(С) kapbepucm
PM MAIL Skype   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Программирование, связанное с MS Office"
mihanik staruha

Запрещается!

1. Публиковать ссылки на вскрытые компоненты

2. Обсуждать взлом компонентов и делиться вскрытыми компонентами



  • Несанкционированная реклама на форуме запрещена
  • Пожалуйста, давайте своим темам осмысленный, информативный заголовок. Вопль "Помогите!" таковым не является.
  • Чем полнее и яснее Вы изложите проблему, тем быстрее мы её решим.
  • Оставляйте свои записи в "Книге отзывов о работе администрации"
  • А вот тут лежит FAQ нашего подраздела


Если Вам понравилась атмосфера форума, заходите к нам чаще!
С уважением mihanik и staruha.

 
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Программирование, связанное с MS Office | Следующая тема »


 




[ Время генерации скрипта: 0.1127 ]   [ Использовано запросов: 21 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.