Как да транспонирате колони в редове и да вмъкнете нови редове, за да попълните данни в Excel?
В тази статия представям VBA код за транспониране на колони в редове и вмъкване на нови редове за попълване на данни, както е показано на екранната снимка по-долу. Ако се интересувате от тази операция, моля, отидете по-долу за повече подробности.
Транспониране и вмъкване на редове с VBA
Транспониране и вмъкване на редове с VBA
Няма директен начин за транспониране на диапазон и вмъкване на редове за попълване на едни и същи данни, но тук мога да въведа VBA код за бързо решаване на тази задача.
1. Натиснете Alt + F11 бутони за отваряне Microsoft Visual Basic за приложения прозорец.
2. кликване Поставете > Модулии поставете под VBA кода в прозореца на модула. Вижте екранна снимка:
VBA: Транспониране и вмъкване на редове.
Sub TransposeInsertRows()
'UpdatebyExtendoffice20161125
Dim xRg As Range
Dim i As Long, j As Long, k As Long
Dim x As Long, y As Long
Set xRg = Application.InputBox _
(Prompt:="Range Selection...", _
Title:="Kutools For Excel", Type:=8)
Application.ScreenUpdating = False
x = xRg(1, 1).Column + 2
y = xRg(1, xRg.Columns.Count).Column
For i = xRg(xRg.Rows.Count, 1).Row To xRg(1, 1).Row Step -1
If Cells(i, x) <> "" And Cells(i, x + 1) <> "" Then
k = Cells(i, x - 2).End(xlToRight).Column
If k > y Then k = y
For j = k To x + 1 Step -1
Cells(i + 1, 1).EntireRow.Insert
With Cells(i + 1, x - 2)
.Value = .Offset(-1, 0)
.Offset(0, 1) = .Offset(-1, 1)
.Offset(0, 2) = Cells(i, j)
End With
Cells(i, j).ClearContents
Next j
End If
Next i
Application.ScreenUpdating = True
End Sub
3. Натиснете F5 за да стартирате кода, след което изберете диапазона от данни, който искате да транспонирате, и вмъкнете редове в изскачащия диалогов прозорец. Вижте екранна снимка:
4. кликване OK. И избраният диапазон е преобразуван, както е показано на екранната снимка по-долу.
Най-добрите инструменти за продуктивност в офиса
Усъвършенствайте уменията си за Excel с Kutools за Excel и изпитайте ефективност, както никога досега. Kutools за Excel предлага над 300 разширени функции за повишаване на производителността и спестяване на време. Щракнете тук, за да получите функцията, от която се нуждаете най-много...
Раздел Office Внася интерфейс с раздели в Office и прави работата ви много по-лесна
- Разрешете редактиране и четене с раздели в Word, Excel, PowerPoint, Publisher, Access, Visio и Project.
- Отваряйте и създавайте множество документи в нови раздели на един и същ прозорец, а не в нови прозорци.
- Увеличава вашата производителност с 50% и намалява стотици кликвания на мишката за вас всеки ден!