Как да транспонирам / конвертирам колони и редове в един ред?
Как да съединя няколко реда и колони в един дълъг ред? Може би изглежда лесно за вас, защото можете да ги копирате един по един и да ги съедините в ред ръчно. Но ще отнеме много време и ще бъде досадно, ако има стотици редове и колони. Тук ще говоря за някои бързи трикове за разрешаването му.
Транспониране / Преобразуване на колони и редове в един ред с формула
Транспониране / Преобразуване на колони и редове в един ред с VBA код
Транспониране / Конвертиране на колони и редове в един ред с Kutools за Excel
Транспониране / Преобразуване на колони и редове в един ред с формула
Ако приемем, че имате диапазон от данни, както показва следната екранна снимка, можете да конвертирате данните от диапазона в един ред в нов работен лист с дълга формула.
Моля, приложете формулата по следния начин:
1. В нов работен лист на активната работна книга щракнете върху клетка A1, копирайте и поставете тази формула: =OFFSET(Sheet1!$A$1,((ROW()-1)*5)+(FLOOR(COLUMN()-1,4)/4),(COLUMN()-1)-(FLOOR(COLUMN()-1,4)))
Забележка: Лист1!$A$1 е препратките към работния лист и диапазона, които искате да използвате.
РЕД()-1)*5 в горната формула, 5 означава номера на реда; и КОЛОНА()-1,4)/4- 4 означава номера на колоната. Можете да ги промените според вашите нужди.
2. След това плъзнете манипулатора за запълване надясно, докато се появи номер 0. В този случай всички данни в диапазона са транспонирани в един ред в нов работен лист. Вижте екранна снимка:
Транспониране / Преобразуване на колони и редове в един ред с VBA код
Следният VBA код също може да ви помогне да конвертирате набор от данни в един ред.
1. Задръжте натиснат ALT + F11 за да отворите Microsoft Visual Basic за приложения прозорец.
2. кликване Поставете > Модулии поставете следния код в Модули прозорец.
Sub TransformOneRow()
'Updateby20131120
Dim InputRng As Range, OutRng As Range
xTitleId = "KutoolsforExcel"
Set InputRng = Application.Selection
Set InputRng = Application.InputBox("Ranges to be transform :", xTitleId, InputRng.Address, Type:=8)
Set OutRng = Application.InputBox("Paste to (single cell):", xTitleId, Type:=8)
Application.ScreenUpdating = False
xRows = InputRng.Rows.Count
xCols = InputRng.Columns.Count
For i = 1 To xRows
InputRng.Rows(i).Copy OutRng
Set OutRng = OutRng.Offset(0, xCols + 0)
Next
Application.ScreenUpdating = True
End Sub
3. След това натиснете F5 за да стартирате кода, изскача диалогов прозорец, за да изберете набор от съдържание, което искате да конвертирате в ред, и щракнете върху Ok, друг изскачащ диалогов прозорец е за вас да изберете една клетка, за да изведете резултата. Вижте екранни снимки:
След това кликнете върху Ok, съдържанието в избрания диапазон се преобразува в ред. Вижте екранна снимка:
ЗабележкаВ Задайте OutRng = OutRng.Offset(0, xCols + 0), можете да промените 0 до произволен номер, за да отговори на вашите нужди.
Например, ако искате да разделите резултатите според оригиналните редове с една колона, можете да промените Задайте OutRng = OutRng.Offset(0, xCols + 0) да се Задайте OutRng = OutRng.Offset(0, xCols + 1), резултатите са показани както следва:
Транспониране / Конвертиране на колони и редове в един ред с Kutools за Excel
Изглежда горните два метода са малко трудни за нас, начинаещи в Excel, тук ще говоря за удобен инструмент - Kutools за Excel за вас.
Kutools за Excel включва повече от 300 удобни инструмента на Excel. Безплатно изпробване без ограничение за 30 дни. Махни го сега
С помощната програма Обхват на трансформация of Kutools за Excel, можете бързо да трансформирате диапазон в един ред, моля, направете следното:
1. Изберете диапазона, който искате да транспонирате.
2. кликване Kutools > Преобразувател на обхват > Обхват на трансформация, вижте екранна снимка:
3. В Обхват на трансформация изберете диалоговия прозорец Диапазон до един ред опция, вижте екранна снимка:
4. След това кликнете OKи щракнете върху клетка, за да поставите резултата от изскачащото поле.
5. кликване OK, а данните в диапазона са транспонирани в един ред. Вижте екранни снимки:
Ако искате да научите повече за тази функция, моля посетете Обхват на трансформация.
Свързани статии:
Как да промените ред в колона в Excel?
Как да транспонирам / конвертирам една колона в множество колони в Excel?
Как да транспонирам / конвертирам колони и редове в една колона?
Най-добрите инструменти за продуктивност в офиса
Усъвършенствайте уменията си за Excel с Kutools за Excel и изпитайте ефективност, както никога досега. Kutools за Excel предлага над 300 разширени функции за повишаване на производителността и спестяване на време. Щракнете тук, за да получите функцията, от която се нуждаете най-много...
Раздел Office Внася интерфейс с раздели в Office и прави работата ви много по-лесна
- Разрешете редактиране и четене с раздели в Word, Excel, PowerPoint, Publisher, Access, Visio и Project.
- Отваряйте и създавайте множество документи в нови раздели на един и същ прозорец, а не в нови прозорци.
- Увеличава вашата производителност с 50% и намалява стотици кликвания на мишката за вас всеки ден!