Форум программистов, компьютерный форум, киберфорум
Наши страницы
VBA
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.55/11: Рейтинг темы: голосов - 11, средняя оценка - 4.55
Denius1981
0 / 0 / 0
Регистрация: 17.06.2010
Сообщений: 3
1

Многомерные и динамические массивы в VBA

06.07.2010, 12:18. Просмотров 1964. Ответов 1
Метки нет (Все метки)

Здравствуйте!
Если Вас не затруднит, помогите решить следующую проблему:
Начиная с ячейки B1 рабочего листа некоторый диапазон ячеек (к примеру до Z1) содержит в произвольном порядке (!) даты рабочих дней за первый квартал 2004 года. Необходимо распределить даты в трех диапазонах (строках) - для каждого месяца свой. А затем отсортировать даты в каждой строке по убыванию.
Заранее спасибо за помощь.

PS: Кстати, как можно задать диапазон 'ненормированным', т.е. не конкретно до Z1 или там еще какой ячейки а до первой пустой ячейки например, т.е. дальше нее уже не искать?
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
06.07.2010, 12:18
Ответы с готовыми решениями:

Многомерные массивы в Dictionary
Подскажите плз, можно ли в Dictionary забивать многомерные массивы? И как можно...

Динамические массивы
застряла в решении задач на динамические массивы, поскольку всю жизнь решала...

Динамические массивы и циклы
Доброго времени суток! Из меня опять пытаются сделать программиста=( несколько...

задача на массивы в VBA
вот условие: Дан массив М(9). Если разность между средним арифметическим...

Vba Двумерные массивы
Помогите пожалуйста решить: Дана матрица (6,5) вычислить произведение...

1
vlth
12 / 12 / 2
Регистрация: 23.03.2010
Сообщений: 635
06.07.2010, 22:20 2
Visual Basic
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
Sub Example()
Dim i As Integer, k As Integer, j As Byte
 
i = Application.WorksheetFunction.CountA(Rows(1))
Range(Cells(1, 2), Cells(1, i + 1)).Sort Key1:=Range('B1'), _
    Order1:=xlDescending, Orientation:=xlLeftToRight
i = 2
j = 2
Do
    k = LastCell(i)
    Range(Cells(j, 2), Cells(j, k - i + 2)).Value = Range(Cells(1, i), Cells(1, k)).Value
    i = k + 1
    j = j + 1
Loop While IsDate(Cells(, i + 1))
End Sub
Function LastCell(ByVal m As Integer) As Integer
    Do
        m = m + 1
    Loop While Month(Cells(, m)) = Month(Cells(, m + 1))
    LastCell = m
End Function
И без всяких массивов...

Спрашивай, если что непонятно.

Удачи!
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
06.07.2010, 22:20

Двухмерные массивы в Excel VBA
1. Заполнить двумерный массив (таблицу) случайными целыми числами. Размерность...

VBA-циклические операторы(отрезок),массивы
Добрый день! Помогите пожалуйста в решении двух данных задач. Задание 1....

Статические строковые массивы - VBA Excel 2016
Здравствуйте. Помогите разобраться! 6 часов угробил на тесты и поиски ответов...


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

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

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