Прескочи на основното съдържание

Как да транспонирам данни от колона в една клетка в Excel?

Автор: Xiaoyang Последна промяна: 2020-07-03

Когато трябва да транспонирате списък с данни в една клетка в работен лист, обикновено можете да приложите Свържете функция за обединяване на списъка с клетки в една клетка, но ще бъде сложно, ако трябва да се комбинират огромни данни. В тази статия ще говоря за някои бързи трикове за решаване на тази задача в Excel.

Транспонирайте данни от колона в една клетка с дефинирана от потребителя функция

Транспонирайте данни от колона в една клетка с Kutools за Excel


Освен функцията Concatenate за обединяване на списък със стойности на клетки, можете да приложите следния VBA код, за да получите резултата възможно най-бързо.

1. Задръжте натиснат ALT + F11 ключове и отваря Microsoft Visual Basic за приложения прозорец.

2. Щракнете Поставете > Модулии поставете следния код в Модули Window.

VBA код: Транспонирайте данни от колона в една клетка

Function transposeRange(Rg As Range)
'updateby Extendoffice
    Dim xCell As Range
    Dim xStr As String
    For Each xCell In Rg
        If Not IsEmpty(xCell.Value) Then
            xStr = xStr & xCell.Value & ","
        End If
    Next
    transposeRange = Left(xStr, Len(xStr) - 1)
End Function

3. След това запазете и затворете този код, върнете се обратно в работния лист и въведете тази формула: =транспониране (A1:A10) в празна клетка, за да поставите резултата, и натиснете Въведете ключ, ще получите всички стойности на клетките в колона, които са разположени в една клетка, вижте екранната снимка:

doc транспониране на клетки в една клетка 1

Забележка: В горния код, A1: A10 е диапазонът от списък, който искате да транспонирате в една клетка, а също така можете да разделите обединеното съдържание с други разделители, като запетая, тире, интервал и т.н., като просто промените запетаята в скрипта xStr = xStr & xCell.Value & ",".


Ако имате Kutools за Excel, със своя мощен инструмент-Комбинирам, можете да комбинирате данни в колона, ред или диапазон в една клетка.

Kutools за Excel : с повече от 300 удобни добавки за Excel, безплатни за изпробване без ограничение за 30 дни.

След инсталиране Kutools за Excel, моля, направете следното:( Безплатно изтегляне Kutools за Excel сега! )

1. Изберете колоната с данни, която искате да комбинирате в една клетка.

2. Щракнете Kutools > Обединяване и разделянеКомбинирайте редове, колони или клетки без загуба на данни, вижте екранна снимка:

3. Изберете в появилия се диалогов прозорец Комбинирайте в една клетка под За комбиниране на избрани клетки според следните опциии след това задайте разделител, за да отделите обединеното съдържание, вижте екранна снимка:

doc транспониране на клетки в една клетка 3

4, След това кликнете Ok or Добавете Обява и ще получите следния резултат, както ви е необходим:

doc транспониране на клетки в една клетка 4 2 doc транспониране на клетки в една клетка 5

Изтеглете и изпробвайте безплатно Kutools за Excel сега!


Kutools за Excel: с повече от 300 удобни добавки за Excel, безплатни за изпробване без ограничение за 30 дни. Изтеглете и изпробвайте безплатно сега!

Най-добрите инструменти за продуктивност в офиса

🤖 Kutools AI помощник: Революционизирайте анализа на данни въз основа на: Интелигентно изпълнение   |  Генериране на код  |  Създаване на персонализирани формули  |  Анализирайте данни и генерирайте диаграми  |  Извикване на функциите на Kutools...
Популярни функции: Намерете, маркирайте или идентифицирайте дубликати   |  Изтриване на празни редове   |  Комбинирайте колони или клетки без загуба на данни   |   Кръг без формула ...
Супер търсене: VLookup с множество критерии    VLookup с множество стойности  |   VLookup в няколко листа   |   Размито търсене ....
Разширен падащ списък: Бързо създаване на падащ списък   |  Зависим падащ списък   |  Падащ списък с множество избори ....
Мениджър на колони: Добавете конкретен брой колони  |  Преместване на колони  |  Превключване на състоянието на видимост на скритите колони  |  Сравнете диапазони и колони ...
Препоръчани функции: Мрежов фокус   |  Изглед на дизайна   |   Голям формула бар    Мениджър на работни книги и листове   |  Библиотека с ресурси (Автоматичен текст)   |  Избор на дата   |  Комбинирайте работни листове   |  Шифроване/декриптиране на клетки    Изпращайте имейли по списък   |  Супер филтър   |   Специален филтър (филтър получер/курсив/зачертано...) ...
Топ 15 комплекта инструменти12 Текст Инструменти (добавяне на текст, Премахване на символи, ...)   |   50 + Графика Видове (диаграма на Гант, ...)   |   40+ Практичен формули (Изчислете възрастта въз основа на рождения ден, ...)   |   19 вмъкване Инструменти (Въведете QR код, Вмъкване на картина от пътя, ...)   |   12 Конверсия Инструменти (Числа към думи, Валутен обмен, ...)   |   7 Обединяване и разделяне Инструменти (Разширено комбиниране на редове, Разделени клетки, ...)   |   ... и още

Усъвършенствайте уменията си за Excel с Kutools за Excel и изпитайте ефективност, както никога досега. Kutools за Excel предлага над 300 разширени функции за повишаване на производителността и спестяване на време.  Щракнете тук, за да получите функцията, от която се нуждаете най-много...

Описание


Раздел Office Внася интерфейс с раздели в Office и прави работата ви много по-лесна

  • Разрешете редактиране и четене с раздели в Word, Excel, PowerPoint, Publisher, Access, Visio и Project.
  • Отваряйте и създавайте множество документи в нови раздели на един и същ прозорец, а не в нови прозорци.
  • Увеличава вашата производителност с 50% и намалява стотици кликвания на мишката за вас всеки ден!
Comments (6)
No ratings yet. Be the first to rate!
This comment was minimized by the moderator on the site
Would anybody know how to add a conditional rule to this function? Basically I have an e-mail directory for multiple businesses. There is a column where I list either Yes or No in response to whether the E-mail is the business' main contact. I am hoping adjust the code so that only the main contacts are pulled and listed in one cell. Therefore, the condition would be that the Main Contact Column lists Yes. I have tried using if statements but I am fairly new to all of this. Any help would be much appreciated!
This comment was minimized by the moderator on the site
Hello friend,
Glad to help. Please read this article: https://www.extendoffice.com/documents/excel/2706-excel-vlookup-return-multiple-values-in-one-cell.html. I believe it can solve your problem. Have a nice day.

Sincerely,
Mandy
This comment was minimized by the moderator on the site
This has been ridiculously helpful to me a number of times. Thank you so much!
This comment was minimized by the moderator on the site
Hi,

Thanks a lot! I'm using your following function and it works very well. I would like to include an "if" function in the transposerange. What should I add to the function in VBA? Basically, it would work like a countif. So we would read the formula =transposerangeif(range,criteria).

Thanks in advance!

Function transposeRange(Rg As Range)
'updateby Extendoffice 20151207
Dim xCell As Range
Dim xStr As String
For Each xCell In Rg
If Not IsEmpty(xCell.Value) Then
xStr = xStr & xCell.Value & ","
End If
Next
transposeRange = Left(xStr, Len(xStr) - 1)
End Function
This comment was minimized by the moderator on the site
Hello,Sophie,
Could you give an example for your need, you can insert a screenshot here.
This comment was minimized by the moderator on the site
Thanks, this was very helpful.
There are no comments posted here yet
Please leave your comments in English
Posting as Guest
×
Rate this post:
0   Characters
Suggested Locations