Як транспонувати діапазон у vba (з прикладом)


Ви можете використовувати такий базовий синтаксис, щоб транспонувати діапазон за допомогою VBA:

 SubTransposeRange ()

    'specify range to transpose
    MyRange = Range(" A1:B5 ")
    
    'find dimensions of range
    XUpper = UBound(MyRange, 1)
    XLower = LBound(MyRange, 1)
    YUpper = UBound(MyRange, 2)
    YLower = LBound(MyRange, 2)
    
    'transpose range
    Range(" D1 ").Resize(YUpper - YLower + 1, XUpper - XLower + 1).Value = _
      WorksheetFunction.Transpose(MyRange)
      
End Sub

У цьому прикладі буде транспоновано клітинки в діапазоні A1:B5 і відображено транспонований діапазон, починаючи з комірки D1 .

У наступному прикладі показано, як використовувати цей синтаксис на практиці.

Приклад: як транспонувати діапазон у VBA

Припустімо, у нас є такий набір даних у Excel, який містить інформацію про різних баскетболістів:

Скажімо, ми хочемо транспонувати діапазон A1:B5 і відобразити транспонований діапазон, починаючи з клітинки D1 .

Для цього ми можемо створити такий макрос:

 SubTransposeRange ()

    'specify range to transpose
    MyRange = Range(" A1:B5 ")
    
    'find dimensions of range
    XUpper = UBound(MyRange, 1)
    XLower = LBound(MyRange, 1)
    YUpper = UBound(MyRange, 2)
    YLower = LBound(MyRange, 2)
    
    'transpose range
    Range(" D1 ").Resize(YUpper - YLower + 1, XUpper - XLower + 1).Value = _
      WorksheetFunction.Transpose(MyRange)
      
End Sub

Коли ми запускаємо цей макрос, ми отримуємо такий результат:

Зауважте, що транспонований діапазон відображається, починаючи з клітинки D1 .

Іншими словами, рядки та стовпці міняються місцями.

Щоб транспонувати інший діапазон, просто замініть A1:B5 у макросі на інший діапазон.

Примітка . Ви можете знайти повну документацію для методу VBA Transpose тут .

Додаткові ресурси

У наступних посібниках пояснюється, як виконувати інші типові завдання у VBA:

VBA: як підрахувати клітинки з певним текстом
VBA: як підрахувати кількість рядків у діапазоні
VBA: як написати функції COUNTIF і COUNTIFS

Додати коментар

Ваша e-mail адреса не оприлюднюватиметься. Обов’язкові поля позначені *