Форум программистов, компьютерный форум, киберфорум
Наши страницы
VBA
Войти
Регистрация
Восстановить пароль
 
Рейтинг: Рейтинг темы: голосов - 28, средняя оценка - 4.96
Antivirus123
0 / 0 / 0
Регистрация: 08.04.2012
Сообщений: 1
#1

Сортировка массива пузырьком - VBA

11.04.2012, 22:47. Просмотров 4470. Ответов 1
Метки нет (Все метки)

Если кому не трудно...помогите разобраться с сортировкой массива по возрастанию...

Visual Basic
1
2
3
4
5
Public Sub Sr()
Dim Z(1 To 10) As Integer
 For i = 1 To 10
  Z(i) = Worksheets(1).Cells(1, i)
Next i
сортировка...

Visual Basic
1
2
3
4
For i = 1 To 10
Z(i) = Worksheets(1).Cells(2, i)
Next i
End Sub
Пытался делать пузырьком что-то у меня ничего не выходит...
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
11.04.2012, 22:47
Я подобрал для вас темы с готовыми решениями и ответами на вопрос Сортировка массива пузырьком (VBA):

Сортировка пузырьком Excel
Здравствуйте, у меня есть код сортировки массива состоящего из значений в...

Сортировка пузырьком и банальный вопрос!
Собственно понятно чем я занимаюсь)) if mas(i)>mas(j) then flag=mas(i) &...

Сортировка данных пузырьком в нескольких столбцах
Нужен макрос сортировки пузырьком по столбцу ИТОГОВАЯ СТОИМОСТЬ. По-этому...

Сортировка пузырьком (как добавить ввод и вывод данных)
Подскажите пожалуйста, как сделать чтобы программа брала данные из ячейки "A" в...

сортировка массива
нужно отсортировать массив в ecxel'e методом прямого включения постоянно...

сортировка массива
Здравствуйте)Нужна помощь !Задача; в 1 столбце в ячейках с 2 по 21 записан...

1
Dragokas
Эксперт WindowsАвтор FAQ
16927 / 7012 / 852
Регистрация: 25.12.2011
Сообщений: 10,808
Записей в блоге: 16
11.04.2012, 23:11 #2
Полу-пузырь
Visual Basic
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
Option Explicit
 
Sub test()
Dim MASS()
 
MASS = Application.Transpose(Sheets(1).[A1].Resize(10, 1))
ArraySort MASS()
Sheets(1).[B1].Resize(10, 1) = Application.Transpose(MASS)
 
End Sub
 
Sub ArraySort(ARRAY_())
Dim Exchange As Boolean 'флаг завершения сортировки
Dim x As Integer 'перебор
Dim t 'As Long 'временная
 
    Do
        Exchange = False
        For x = LBound(ARRAY_) + 1 To UBound(ARRAY_)
            If ARRAY_(x - 1) > ARRAY_(x) Then
                t = ARRAY_(x - 1)
                ARRAY_(x - 1) = ARRAY_(x)
                ARRAY_(x) = t
                Exchange = True
            End If
        Next
    Loop While Exchange
End Sub

Не по теме:

Не знаю на сколько заезженная тема.
Если мне нужно что-то отсортировать, я вообще не меняю исходные значения местами.
Вместо этого создаю новый массив позиций, где записываю нужный порядок чтения исходного массива.
Таким образом можно сортировать одной конструкцией многомерные массивы, оставляя на месте исходные данные.

0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
11.04.2012, 23:11
Привет! Вот еще темы с решениями:

Сортировка массива
В массиве вещественных чисел отсортировать положительные числа по возрастанию,...

сортировка массива
Здравствуйте.Помогите написать программу на pascal. Ввожу числа и буквы,...

Сортировка двумерного массива
Задание: разработать программу сортировки двумерного массива по возрастанию и...

Сортировка массива: доделать
Добрый день, помогите до делать элементарную программу сортировки массива ,...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
2
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.
Рейтинг@Mail.ru