Съдържание
"Конкатенация" обикновено означава да свържеш нещо в поредица или верига. Тази операция се използва винаги, когато трябва да обедините текст от няколко клетки на Google Sheets. В тази статия са събрани най-популярните и лесни решения, които ще ви помогнат да решите пъзела с конкатенацията.
Колкото и голям да е наборът ви от данни, може да се сблъскате със задачата да комбинирате няколко клетки в Google Sheets заедно. И не се съмнявам, че ще искате не само да запазите всички стойности, но и да добавите някои запетаи, интервали или други символи, или дори да разделите тези записи с друг текст.
Електронните таблици предлагат няколко инструмента за тази задача.
Функцията CONCAT на Google Sheets
Функцията CONCAT е опростена версия на CONCATENATE в Google Sheets:
=CONCAT(стойност1, стойност2)За да обедините клетките с тази функция, трябва да изброите необходимите стойности:
- стойност1 - запис, към който трябва да се добави стойност2.
- стойност2 - стойността за присъединяване.
За да получите един низ от 2 текстови или числови единици, формулата ще изглежда по следния начин, като всеки запис е в двойни кавички:
=CONCAT("2019:", "Цар Лъв")
В действителност данните ви най-вероятно вече са в клетки. Можете да се обръщате директно към тези клетки, вместо да записвате всяко число или текст като аргумент. Така че формулата за реални данни ще бъде следната:
=CONCAT(A2,B2)
Съвет. За да копирате формулата си в цялата колона, изберете клетката с формулата и щракнете два пъти върху малкия квадрат в долния десен ъгъл на клетката. Цялата колона ще бъде автоматично запълнена с формулата до самия край на таблицата.
Както виждате, функцията е изключително проста, но има голямо значение за слаби места :
- обединява само две клетки в Google Sheets едновременно.
- тя не може да обединява колони, редове или други големи диапазони от данни, а само отделни клетки. Ако се опитате да обедините няколко клетки, ще получите грешка или ще бъдат обединени само първите две стойности, както е в този случай:
=CONCAT(A2:A11,B2:B11)
CONCAT алтернатива: оператор за конкатенация ampersand (&)
Във формулите има много различни оператори за различни цели. Конкатенацията не е изключение. Използването на символа амперсанд (&) във формулите вместо функцията CONCAT ще ви осигури същия резултат:
=A2&B2
Но малко знаете, че този оператор за конкатенация е по-гъвкав. Ето какво може да прави:
- Сливане на повече от две стойности наведнъж:
=A2&B2&C2
- Не само обединявайте клетки в Google Sheets, но и ги разделяйте с различни символи:
=A2&" "&B2&"; "&C2
Ако все още не сте постигнали желания резултат с тези опции, има още една функция, която да опитате.
Как да използвате CONCATENATE в Google Sheets
Смятам, че функцията CONCATENATE на Google Sheets е първата, която трябва да се използва, когато става въпрос за добавяне на няколко записа заедно.
КОНКАТЕНИРАНЕ на текстови низове и числа в Google Sheets
Шаблонът на формулата се състои от следните аргументи:
=CONCATENATE(string1, [string2, ...])- низ1 е първият низ, към който искате да добавите други стойности. Този аргумент е задължителен.
- string2, ... означава всички други низове, които може да искате да добавите. Този аргумент не е задължителен.
Забележка: Записът на резултата ще се състои от низовете в реда на появата им във формулата.
Ако адаптирам формулата към моите данни, ще получа следното:
=CONCATENATE(A2,B2,C2)
Или, тъй като функцията приема диапазони:
=CONCATENATE(A2:D2)
Веднага можете да забележите първото предимство на Google Sheets CONCATENATE: той лесно обединява две клетки с текст и числа.
Таблици на Google: конкатениране на низове с разделители
Комбинирането на клетки в Google Sheets е половината от работата. Но за да изглежда резултатът красив и четлив, трябва да добавите някои допълнителни символи.
Ако запазите формулата такава, каквато е, тя просто ще слепи всичко: BonnieJacksonCA , BonnieJacksonIN , и т.н. Но CONCATENATE на Google Sheets приема и символи като аргументи.
Затова, за да добавите някои разделители за улеснение на четенето, посочете ги в двойни кавички във формулата:
=CONCATENATE(A2," ",B2,", ",C2)
Тук искам да свържа A2 & B2 с интервал и да отделя B2 от C2 със запетая и интервал:
Можете да използвате почти всеки символ във функцията по този начин, но прекъсването на реда изисква различен подход.
Съвет: В случай че в някои от колоните, които обединявате, има празни клетки, има още една функция, която може да ви е интересна. TEXTJOIN не просто обединява клетки в Google Sheets, но и игнорира празните клетки:
=TEXTJOIN(" ",TRUE,A2:C2)
Ето как работи:
- Посочете желания разделител като първи аргумент - пространство (" ") за мен.
- Поставете TRUE като втори аргумент, за да пропуснете празни клетки или FALSE за да ги включите в резултата.
- Въведете диапазона за сливане.
Конкатенация с прекъсване на реда в Google Таблици
Въпреки че е очевидно как да въведете повечето разделители във функцията, не можете да въведете прекъсване на ред по същия начин там. Но за щастие Google ви позволява да играете с много различни карти.
Има една функция, която помага за получаването на специални символи - тя се нарича CHAR. Виждате, че всеки символ има място в таблицата Unicode. Трябва само да подадете поредния номер на символа от тази таблица към функцията и тя ще върне самия символ.
Ето една формула за получаване на прекъсване на реда:
=CHAR(10)
Добавете го към формулата за конкатенация с прекъсване на реда в Google Sheets:
=CONCATENATE(A2,CHAR(10),B2,CHAR(10),C2,CHAR(10),D2)
Комбиниране на дата и час в Google Sheets
Ако се опитате да комбинирате дата и час в Google Sheets, като използвате някой от горните методи, това няма да се получи. Вашата електронна таблица ще върне числа:
За да комбинирате правилно датата и часа в Google Sheets, използвайте функцията TEXT:
=TEXT(число, формат)- където номер е всяко число, дата или час, които искате да получите в желания формат.
- и формат е моделът, който искате да видите като резултат.
Съвет. В моя пример ще направя препратка към клетки с дати и часове, но можете да използвате единици за дата/време или дори такива функции като DATE или TIME директно във формулата.
- Използвам първата формула TEXT, за да променя формата на датата от 7/9/2019 към 9 юли 2019 г. :
=TEXT(B2, "D MMM YYYY")
- Вторият TEXT връща часа:
=TEXT(C2, "HH:MM:SS")
- Използвайки ги в CONCATENATE, Google Sheets ми позволява да комбинирам дата и час в желания формат с други символи или текст:
=CONCATENATE(TEXT(B2, "D MMM YYYY"),", ",TEXT(C2, "HH:MM:SS"))
Комбиниране на колони в Google Sheets
С леки корекции всички начини, които споменах, могат да обединяват колони в Google Sheets.
Пример 1. CONCAT в Google Sheets
За да обедините цели колони в Google Sheets с помощта на CONCAT, изберете целия диапазон, който трябва да съдържа резултата (C2:C11 в моя случай), и въведете формулата си, която го обвива в ARRAYFORMULA:
=МАСИВФОРМАЛА(CONCAT(A2:A11,B2:B11))
Забележка: Можете да използвате функцията CONCATENATE, но тя ще обедини всички записи в една клетка, тъй като лесно обединява няколко клетки и диапазони от данни.
Пример 2. Оператор за конкатенация
Създаване на формули за масиви за комбиниране на колони в Google Sheets с помощта на амперсанд и едновременно с това добавяне на разделители:
=ARRAYFORMULA(A2:A11&" "&B2:B11&"; "&C2:C11)
Това изглежда добре, но трябва да отбележа някои основни недостатъци.
Ако имате твърде много колони, изброяването им може да се превърне в неприятна задача, особено ако случайно пропуснете/дублирате/смесите някои символи.
Освен това, ако по-късно решите да добавите още колони към формулата, ще трябва да редактирате ръчно всеки съществуващ диапазон във формулата.
Следващият пример решава тези проблеми.
Пример 3. Запитване от Google Sheets
Функцията QUERY на Google Sheets също е подходяща за обединяване на няколко колони в Google Sheets. Разгледайте:
=TRANSPOSE(QUERY(TRANSPOSE(A2:D10),,9^9))
Може би си мислите, че тази странна формула е непостижима за вас, но нека ви я разкажа накратко:
- =TRANSPOSE(A2:D10) превръща редовете с данни в колони.
- =QUERY(TRANSPOSE(A2:D10),,9^9) обединява записи във всяка колона до горните клетки.
Съвет. Когато поставям 9^9 във формулата, се уверявам, че всички редове от всички колони ще бъдат изтеглени в първия ред, сякаш са заглавия. 9^9 тъй като този израз включва всички възможни клетки в електронната таблица (помните ли ограничението за 10 млн. клетки?) и е лесен за запомняне. :)
- =TRANSPOSE(QUERY(TRANSPOSE(A2:D10),,9^9)) взема този ред на заглавието от QUERY и го превръща в колона като тази, която имам.
Ето какви са предимствата на обединяването на колони в Google Sheets с помощта на QUERY:
- не е необходимо да избирате цялата колона, както при формулите за масиви.
- не е необходимо да споменавате всяка колона във формулата, освен ако те не са съседни. В този случай формулата ще изглежда така:
=TRANSPOSE(QUERY(TRANSPOSE({A2:A10,C2:C10,E2:E10,G2:G10}),,9^9))
Конкатениране и добавяне на текст по позиция
Вече знаете, че можете да добавяте липсващ текст, числа и символи към низовете си с помощта на функцията CONCATENATE.
Съвет. Вижте повече формули за това в този урок.
Но ако има твърде много записи, които трябва да се обединят, всеки допълнителен символ може да разшири формулата ви много повече, отколкото сте планирали. В такива случаи е по-добре да обедините клетките в Google Sheets такива, каквито са, или да използвате прости разделители като интервал и да добавите текста след това. Един специален наш инструмент ще ви помогне.
Добавяне на текст по позиция вмъква всички символи и низове по зададената от вас позиция, без да са необходими формули. Нека ви покажа как работи.
В предишния пример QUERY присъедини имена и телефонни номера за мен. Но бих искал да добавите съкращения на страни: (САЩ/САЩ) преди телефонни номера, които започват с +1 и ВЕЛИКОБРИТАНИЯ преди +44 :
Разделяне на клетки в Google Sheets
Ако обединявате клетки в Google Таблици, има вероятност в даден момент да се наложи да ги разделите обратно. Има три начина да направите това:
- Създаване на формула с помощта на функцията SPLIT на Google Sheets.
- Използвайте стандартния инструмент за електронни таблици - Разделяйте текста на колони.
- Или изпробвайте подобрената версия на вградения инструмент - Разделяне на текст на колони за Google Sheets:
Тя ви позволява да разделяте клетките по всеки разделител или дори по набори от разделители, като ги третира като едно цяло и включва съюзи, ако е необходимо. Тя предлага и възможност за разделяне на клетките в Google Sheets по позиция.
Съвет: Има опция за извличане на данни от клетките на Google Sheets, а не за разделяне на съдържанието.
Как да обединявате клетки в Google Sheets без формули
Ако овладяването на различни формули не е част от плана ви, ще се възползвате от добавката Merge Values. Добавката бързо обединява записи в редове, колони или целия диапазон от клетки. Опциите ѝ са кристално ясни и всичко, което трябва да направите, е да изберете диапазона и да решите как да изглежда резултатът.
- Можете да изберете да комбиниране на колони в Google Sheets - дори и несъседни, отделете ги със запетаи и интервали и поставете резултата вдясно от оригиналните записи:
Ако сте се заинтересували от инструмента, можете да разгледате всичко, което той прави, на тази специална страница или в този кратък видео урок:
Научете как да използвате функцията Combine Duplicate Rows в това видео:
Надявам се, че вече сте решили кой от начините е най-подходящ за вашия случай. Ако имате предвид други методи, моля, споделете с нас в раздела за коментари по-долу :)