Масив об'єктів VBA

Зміст

Цей підручник покаже, як створювати та використовувати масиви об’єктів у VBA.

У VBA масиви - це змінні, які зберігають кілька значень. Ви можете зберігати об’єкти VBA в масивах так само, як і будь -які інші дані.

Оголошення масиву об’єктів

У цьому прикладі ми оголосимо масив аркушів VBA:

1 Затемнити арК. (3) як робочий аркуш

Заповнення масиву статичних об’єктів

Оголосіть масив об’єктів статичним, а потім можна заповнити масив аркушами, які ви вибрали зі своєї книги.

12345678 Sub TestObjArray ()'визначити масив як масив аркушаЗатемнити арК. (1 до 3) як робочий аркуш'додати 3 масиви до масивуset arWks (1) = Аркуші (1)set arWks (2) = Аркуші (2)Встановити arWks (3) = Аркуші (3)End Sub

Заповнення масиву динамічних об'єктів

Ви можете оголосити масив об’єктів як динамічний, а потім порахувати аркуші у книзі, перш ніж призначати розмір масиву об’єктному масиву.

1234567891011121314 Sub TestObjArray ()'визначити масив як масив аркушаDim arWks () як робочий аркуш'підрахувати, скільки аркушів у файлі, і повторно затемнити масивDim n як ціле числоDim i як ціле число'порахуйте аркуші та мінус один, щоб встановити межі для масивуn = Application.Sheets.Count - 1АВТОМАТИЧНІ РЕДИМИ (n)'заповніть масив аркуша всіма аркушами у книзіДля i = LBound (arWks) до UBound (arWks)Встановити arWks (i) = ActiveWorkbook.Sheets (i + 1)Далі iEnd Sub

У наведеному вище прикладі ми спочатку оголошуємо масив робочого листа. Потім ми підраховуємо кількість аркушів у робочій книзі і призначаємо це значення мінус одиницю UBound масиву. Це пов'язано з тим, що LBound масиву починається з 0. Нарешті, ми прокручуємо аркуші та додаємо кожен аркуш до масиву.

Використання масиву об’єктів у коді VBA

Після заповнення масиву робочого аркуша ми можемо використовувати VBA для циклу по масиву.

123456789101112131415161718 Sub TestObjArray ()'визначити масив як масив аркушаDim arWks () як робочий аркуш'підрахувати, скільки аркушів у файлі, і повторно затемнити масивDim n як ціле числоDim i як ціле число'порахуйте аркуші та мінус один, щоб встановити межі для масивуn = Application.Sheets.Count - 1АВТОМАТИЧНІ РЕДИМИ (n)'заповніть масив аркуша всіма аркушами у книзіДля i = LBound (arWks) до UBound (arWks)Встановити arWks (i) = ActiveWorkbook.Sheets (i + 1)Далі i'зробити щось для кожного аркуша в масивіДля i = LBound (arWks) до UBound (arWks)arWks (i) .Range ("A1: H1"). Font.Bold = TrueДалі iEnd Sub

У наведеному вище прикладі ми прокручуємо масив і виділяємо жирним шрифтом перший рядок кожного аркуша в масиві.

Ви допоможете розвитку сайту, поділившись сторінкою з друзями

wave wave wave wave wave