Как да подреждам колони отляво надясно в една колона в Excel?
Ако приемем, че има няколко колони, задачата е да подредите колоните отляво надясно в една колона, както е показано на екранната снимка по-долу. Освен ръчно преместване на колоните една по една, има ли някакви трикове за решаване на това в Excel?
Подреждане на колони отляво надясно в една колона с VBA
Подредете колони отляво надясно в една колона с Kutools за Excel
Подреждане на колони отляво надясно в една колона с VBA
В Excel няма вградена функция, която да се справи с тази работа, но VBA кодът може да ви помогне.
1. Натиснете Alt + F11 ключове, след това в Microsoft Visual Basic за приложения прозорец, кликнете Поставете > Модули за създаване на нов празен модул.
2. Копирайте и поставете кода по-долу в Модули.
VBA: Подреждане на колони в една
Sub StackColumns()
'UpdatebyExtendoffice20180814
Dim xSRg, xDRg As Range
Dim xDWS As Worksheet
Dim xIntDR, xIntDC, xI As Long
Dim xFNumR, xFNumC As Long
On Error GoTo Err1
Set xSRg = Application.InputBox("Select Columns:", "Kutools for Excel", xTxt, , , , , 8)
If xSRg Is Nothing Then
Err1:
Application.ScreenUpdating = True
Exit Sub
End If
Set xDRg = Application.InputBox("Select a cell to place result:", "Kutools for Excel", xTxt, , , , , 8)
If xDRg Is Nothing Then
Exit Sub
End If
Application.ScreenUpdating = False
Set xDWS = xDRg.Worksheet
xIntDR = xDRg.Row
xIntDC = xDRg.Column
xI = 0
For xFNumC = 1 To xSRg.Columns.Count
For xFNumR = 1 To xSRg.Rows.Count
Set xDRg = xDWS.Cells(xIntDR + xI, xIntDC)
xDRg.Value = xSRg.Cells(xFNumR, xFNumC).Value
xI = xI + 1
Next xFNumR
Next xFNumC
Application.ScreenUpdating = True
End Sub
3. Натиснете F5 за да стартирате кода, изскача диалогов прозорец, за да изберете колоните, които ще подредите в една.
4. кликване OK, изберете клетка, за да поставите резултата.
5. кликване OK да свърша. Сега избраните колони са подредени в една колона.
Подредете колони отляво надясно в една колона с Kutools за Excel
Ако имате Kutools за Excel инсталиран в Excel, можете да използвате Transform Range помощна програма за справяне с тази работа.
Kutools за Excel, с повече от 300 удобни функции, прави работата ви по-лесна. |
След инсталиране Kutools за Excel, моля, направете следното:(Безплатно изтегляне Kutools за Excel сега!)
1. Изберете колоните, които искате да подредите, щракнете Kutools > Обхват > Transform Range.
2. В Transform Range диалог, проверка Range to single row отметка, щракнете Ok.
3. В изскачащия диалог изберете клетка, за да поставите резултата, щракнете върху OK.
Сега колоните са преобразувани в един ред.
4. Изберете единичния ред, натиснете Ctrl + C за да го копирате и изберете друга клетка, която ще постави колоната на стека, щракнете с десния бутон, за да изберете Transpose(T) в контекстното меню.
Сега единичният ред е транспониран в колона стек.
Обхват на транспониране
Най-добрите инструменти за продуктивност в офиса
Усъвършенствайте уменията си за Excel с Kutools за Excel и изпитайте ефективност, както никога досега. Kutools за Excel предлага над 300 разширени функции за повишаване на производителността и спестяване на време. Щракнете тук, за да получите функцията, от която се нуждаете най-много...
Раздел Office Внася интерфейс с раздели в Office и прави работата ви много по-лесна
- Разрешете редактиране и четене с раздели в Word, Excel, PowerPoint, Publisher, Access, Visio и Project.
- Отваряйте и създавайте множество документи в нови раздели на един и същ прозорец, а не в нови прозорци.
- Увеличава вашата производителност с 50% и намалява стотици кликвания на мишката за вас всеки ден!