
- •Програмування в середовищі Excel
- •79057, М. Львів, вул. Генерала Чупринки, 103/54
- •1. Формування рядка d:
- •2. Формування рядка d':
- •3. Сортування рядка d':
- •1. Формування рядка d:
- •2. Формування рядка d':
- •3. Сортування рядка d':
- •2. Формування рядка аr:
- •3. Формування рядка аRc:
- •4. Сортування рядка аRc:
- •2. Формування рядка аr:
- •3. Формування рядка аRc:
- •4. Сортування рядка аRc:
1. Формування рядка d:
Клітини B77:B86 =C14 – <Ctrl + Enter>
2. Формування рядка d':
Клітини B77:B86 – <Ctrl + C> (де C – copy)
Клітина D77 – Правка, Специальная вставка... Вставить: значения <OK>
3. Сортування рядка d':
Клітини B67:K67 Данные, Сортировка:
1. Сортировать по: возрастанию
2. Идентифицировать поля по: отсутствует
3. Параметры ...
4. Сортировать по первому ключу: не производится
5. Сортировать: строки диапазона
6. <OK>
Тексти процедур і функцій – для середовища Visual Basic
Sub Zavd_6_12() ' Сортування стовпця за спаданням значень його елементів
Dim i, j, row, ozn As Byte
Dim A_mas() As Single
Set myCELL =Application.InputBox( _
prompt:="Виберіть вхідний стовпець даних (без заголовка)", _
Type:=8)
Set myCELL2 =Application.InputBox( _
prompt:="Виберіть клітинку, з якої будуть виводитися отримані результати", _
Type:=8)
ozn =Application.InputBox("Введіть ознаку сортування: 1 - за спаданням; 2 - за зростанням")
row =myCELL.Rows.Count ' Обчислення кількості рядків
ReDim A_mas(1 To row)
'Занесення введених елементів у одновимірний масив
For i =1 To row
A_mas(i) =myCELL.Columns(1).Cells(i)
Next i
If ozn =1 Then ' Сорт. масиву за спаданням
' Сортування одновимірного масиву методом перестановок
Call Sort_P(A_mas, col)
Else ' Сорт. масиву за зростанням
' Сортування одновимірного масиву методом пошуку найменшого елемента
Call Sort_M(A_mas, row)
End If
' Виведених елементів двовимірного масиву
For i =1 To row
myCELL2.Offset(-1 + i, 0).Value =A_mas(i)
Next i
myCELL2.Offset(row, 0).Value ="Кінець розрахунку"
End Sub
Задача 6.2. Відповідно до номера варіанту (прикл. 1 і 2), з використанням засобів середовищ Excel та Visual Basic відсортувати елементи двовимірного масиву, а саме:
рядків матриці
у порядку спадання значень їх елементів;
стовпців матриці у порядку зростання значень їх елементів;
матриці по рядках у порядку спадання значень їх елементів;
матриці по стовпцях у порядку зростання значень їх елементів.
Сортування елементів двовимірного масиву
Сортування рядків матриці у порядку спадання значень їх елементів
|
B |
C |
D |
E |
F |
G |
H |
I |
J |
K |
L |
91 |
А |
|
|
|
|
|
А' |
|
|
|
|
92 |
0,10 |
8,11 |
40,44 |
65,52 |
57,51 |
|
65,52 |
57,51 |
40,44 |
8,11 |
0,10 |
93 |
1,20 |
2,97 |
6,75 |
12,61 |
14,10 |
|
12,61 |
14,10 |
6,75 |
2,97 |
1,20 |
94 |
1,29 |
11,08 |
47,19 |
78,13 |
71,61 |
|
78,13 |
71,61 |
47,19 |
11,08 |
1,29 |
95 |
2,49 |
14,05 |
53,95 |
90,75 |
85,70 |
|
90,75 |
85,70 |
53,95 |
14,05 |
2,49 |
96 |
3,79 |
25,13 |
101,14 |
168,88 |
157,31 |
|
168,88 |
157,31 |
101,14 |
25,13 |
3,79 |
Порядок виконання дій – для середовища Excel
1. Формування матриці <А>:
Клітини B92:F96 =C48 – <Ctrl + Enter>
2. Формування матриці <А'>:
Клітини B92:F96 – <Ctrl + C> (де C – copy)
Клітина H92 – Правка, Специальная вставка... Вставить: значения <OK>
3. Сортування рядків матриці <А'>:
Клітини H92:L96 Данные, Сортировка:
1. Сортировать по: убыванию
2. Идентифицировать поля по: отсутствует
3. Параметры...
4. Сортировать по первому ключу: не производится
5. Сортировать: столбцы диапазона
6. <OK>
Сортування стовпців матриці у порядку зростання значень їх елементів
|
B |
C |
D |
E |
F |
G |
H |
I |
J |
K |
L |
106 |
А |
|
|
|
|
|
А' |
|
|
|
|
107 |
0,10 |
8,11 |
40,44 |
65,52 |
57,51 |
|
3,79 |
25,13 |
101,14 |
168,88 |
157,31 |
108 |
1,20 |
2,97 |
6,75 |
12,61 |
14,10 |
|
2,49 |
14,05 |
53,95 |
90,75 |
85,70 |
109 |
1,29 |
11,08 |
47,19 |
78,13 |
71,61 |
|
1,29 |
11,08 |
47,19 |
78,13 |
71,61 |
110 |
2,49 |
14,05 |
53,95 |
90,75 |
85,70 |
|
1,20 |
2,97 |
6,75 |
12,61 |
14,10 |
111 |
3,79 |
25,13 |
101,14 |
168,88 |
157,31 |
|
0,10 |
8,11 |
40,44 |
65,52 |
57,51 |
Порядок виконання дій – для середовища Excel
1. Формування матриці <А>:
Клітини B107:F111 =C48 – <Ctrl + Enter>
2. Формування матриці <А'>:
Клітини B107:F111 – <Ctrl + C> (де C – copy)
Клітина H107 – Правка, Специальная вставка... Вставить: значения <OK>
3. Сортування рядків матриці <А'>:
Клітини H107:L111 Данные, Сортировка:
1. Сортировать по: возрастанию
2. Идентифицировать поля по: обозначениям столбцов листа
3. Параметры...
4. Сортировать по первому ключу: не производится
5. Сортировать: строки диапазона
6. <OK>
Сортування матриці по рядках у порядку спадання значень їх елементів
|
B |
C |
D |
E |
F |
G |
H |
I |
J |
K |
L |
122 |
А |
|
|
|
|
|
А' |
|
|
|
|
123 |
0,10 |
8,11 |
40,44 |
65,52 |
57,51 |
|
0,10 |
1,20 |
1,29 |
2,49 |
2,97 |
124 |
1,20 |
2,97 |
6,75 |
12,61 |
14,10 |
|
3,79 |
6,75 |
8,11 |
11,08 |
12,61 |
125 |
1,29 |
11,08 |
47,19 |
78,13 |
71,61 |
|
14,05 |
14,10 |
25,13 |
40,44 |
47,19 |
126 |
2,49 |
14,05 |
53,95 |
90,75 |
85,70 |
|
53,95 |
57,51 |
65,52 |
71,61 |
78,13 |
127 |
3,79 |
25,13 |
101,14 |
168,88 |
157,31 |
|
85,70 |
90,75 |
101,14 |
157,31 |
168,88 |
128 |
AR |
|
|
|
|
|
|
|
|
|
|
129 |
0,10 |
8,11 |
40,44 |
65,52 |
57,51 |
1,20 |
2,97 |
6,75 |
12,61 |
14,10 |
1,29 |
130 |
ARс |
|
|
|
|
|
|
|
|
|
|
131 |
0,10 |
1,20 |
1,29 |
2,49 |
2,97 |
3,79 |
6,75 |
8,11 |
11,08 |
12,61 |
14,05 |
Порядок виконання дій – для середовища Excel
1. Формування матриці <А>:
Клітини B123:F127 =C48 – <Ctrl + Enter>