Преглед садржаја
Док радимо са ВБА у Екцел-у, често морамо да повежемо стринг(е) и променљиве(е) у радном листу. Спајање стринга (с) и променљивих (с) има широку примену у скоро свим секторима у нашим радовима, почев од сумирања резултата ученика до анализе сложеног пословања. У овом чланку ћу вам показати како можете спојити стринг(е) и променљиве(е) у радном листу помоћу ВБА у Екцел-у. Објаснићу ствари одговарајућим примерима и илустрацијама.
Спојите стринг(ове) и променљиве(е) у Екцел ВБА (брзи преглед)
Преузмите радну свеску за вежбу
Преузмите ову радну свеску за вежбање да бисте вежбали док читате овај чланак.
Спојите стринг и променљиву.клсм
Споји стринг(ове) и променљиве(е) у Екцел ВБА (анализа корак по корак)
Прво, хајде да видимо како можемо да спојимо низове(е) и променљиве (е) у ВБА корак по корак.
⧪ Повезивање стрингова (с):
За спајање два или више стрингова у ВБА , можете користити и симбол за аритметичко сабирање (+) и симбол амперсанд (&амп; ).
На пример, за спајање стрингове „Велика очекивања” и „Прича о два града” са зарезом , можете користити:
1951
Или,
7448
Покрените било који од горњих кодова. Приказаће конкатенирани излаз, Велика очекивања,Прича о два града .
⧪ Повезивање променљивих(а)
Ако све променљиве садрже низове вредности, онда можете да користите и аритметички симбол сабирања (+) и симбол амперсанд (&амп;) .
Али ако не, онда можете да користите само симбол амперсанд (&амп;) за спајање.
На пример, хајде да имамо две променљиве, А и Б .
А садржи стринг, „Прича о два града” , а Б садржи још један низ, „Четрдесет правила љубави” .
Можете користити и симбол адиције (+) и амперсанд (&амп;) симбол да бисте их спојили.
8255
Или,
4707
У оба случаја, они ће вратити повезани стринг.
Али ако је А низ ( „ Прича о два града” ) и Б је цео број ( 27 ), морате користити симбол амперсанд (&амп;) за спајање.
9101
Вратиће конкатенирани излаз .
Примери за Цонцат укључите стрингове и променљиве у Екцел ВБА (укључујући макро, УДФ и кориснички образац)
Научили смо да повежемо стринг(е) и променљиве(е) са ВБА у Екцел-у . Овог пута ћемо истражити неке примере који укључују спајање стрингова и променљивих са ВБА .
Пример 1: Развијање макроа за спајање низова (стрингова) и променљива (е) у Екцел ВБА
Научили смо даспојите стрингове и променљиве са ВБА . Овог пута ћемо развити Макро за спајање стрингова и променљивих више колона у радном листу.
Овде имамо скуп података са именима књига , аутори и цене неких књига у књижари Мартин Бооксторе.
Хајде да развијемо Макро за спајање колона 1, 2, и 3 скупа података Б4:Д14 у ћелији Ф4 .
Код ВБА ће бити:
⧭ ВБА код:
3540
⧭ Излаз :
Покрени овај код. Добићете 3 колоне спојене у опсегу Ф4:Ф14.
Прочитајте више: Макро за Споји више колона у Екцел-у (са УДФ-ом и УсерФорм-ом)
Пример 2: Креирање кориснички дефинисане функције за спајање стрингова и променљивих у Екцел ВБА
Научили смо да развијемо Макро за спајање више колона скупа података. Овог пута ћемо креирати кориснички дефинисану функцију за спајање стрингова или променљивих у Екцел-у.
Комплетан ВБА код ће бити:
⧭ ВБА код:
4174
⧭ Излаз:
Изаберите колону у коју желите да спојите опсег и унесите ову формулу:
=ConcatenateValues("She","H. Rider Haggard",", ")
Вратиће Она, Х. Ридер Хагард као излаз.
Поново унесите формулу:
=ConcatenateValues(B4:B14,30,", ")
[ Формула низа . Зато не заборавите дапритисните ЦТРЛ + СХИФТ + ЕНТЕР осим ако нисте у Оффице 365 .]
Спојиће 30 са свим вредностима опсега Б4:Б14 .
На крају, унесите:
=ConcatenateValues(B4:B14,C4:C14,", ")
[Поново Формула низа . Зато не заборавите да притиснете ЦТРЛ + СХИФТ + ЕНТЕР осим ако нисте у Оффице 365 .]
Ујединиће све вредности опсега Б4: Б14 са онима од Ц4:Ц14 .
Прочитајте више: Како конкатенирати у Екцел-у (3 одговарајућа начина)
Слична читања:
- Како комбиновати текст из две или више ћелија у једну ћелију у Екцел-у (5 метода)
- Комбинујте редове у једну ћелију у Екцел-у
- Конкатенирајте бројеве у Екцел-у (4 брзе формуле)
- Комбинујте текст у Екцел-у (8 одговарајућих начина)
- Како спојити апостроф у Екцел-у (6 једноставних начина)
Пример 3: Развијање УсерФорм за спајање стрингова и променљивих у различит радни лист у Екцел ВБА
Научили смо да развијемо Макро и Кориснички дефинисан функција за спајање стрингова и вредности. Коначно, ми ћемо развити УсерФорм да повежемо стрингове и вредности на жељену локацију жељеног радног листа.
⧪ Корак 1: Убацивање корисничког обрасца
Идите на Убаци &гт; Опција УсерФорм на траци са алаткама ВБА да бисте уметнули нови УсерФорм .
⧪ Корак 2: Превлачење Алати заУсерФорм
А УсерФорм под називом УсерФорм1 ће бити отворен, заједно са Тоолбок под називом Цонтрол .
Померите миша преко кутије са алаткама и превуците 2 поља за листу, 5 оквира за текст, 7 ознака и 1 дугме за команду у корисничком обрасцу .
Промените приказ ознака као што је приказано на слици.
Слично, промените приказ ЦоммандБуттон у ОК .
⧪ Корак 3: Писање кода за ТектБок1
Двапут кликните на ТектБок1 . Отвориће се Приватна потпроцедура под називом ТектБок1_Цханге . Тамо унесите следећи код.
3730
⧪ Корак 4: Писање кода за ТектБок3
Слично, двапут кликните на ТектБок3 . Друга Приватна потпроцедура под називом ТектБок3_Цханге ће се отворити. Тамо унесите следећи код.
3726
⧪ Корак 5: Писање кода за ТектБок4
Такође, двапут кликните на ТектБок3 . Друга Приватна потпроцедура под називом ТектБок3_Цханге ће се отворити. Тамо унесите следећи код.
3557
⧪ Корак 6: Писање кода за ЛистБок2
Затим кликните двапут на ЛистБок2 . Када се Приватна потпроцедура под називом ЛистБок2_Цлицк отвори, унесите овај код тамо.
7748
⧪ Корак 7: Писање кода за ЦомманБуттон1
Такође, двапут кликните на ЦоммандБуттон1 . Након Приватне потпроцедуре под називом ЦоммандБуттон1_Цханге отвори, уметните следећи код.
2663
⧪ Корак 7: Писање кода за покретање корисничког обрасца
Сада је последњи корак. Уметните нови Модуле са траке са алаткама ВБА и уметните следећи код.
7463
⧪ Корак 8: Покретање УсерФорм
Ваш УсерФорм је сада спреман за употребу. Да бисте га покренули, изаберите скуп података са радног листа (укључујући Заглавља ) и покрените Макро под називом Рун_УсерФорм .
УсерФорм ће се учитати са свим опцијама. Изабрана адреса опсега ће бити приказана на ТектБок1 ( Б3:Д4 овде). Ако желите, можете га променити. Изабрани опсег на радном листу ће се променити.
Изаберите колоне које желите да спојите из Колоне у Цонцат ЛистБок. Овде сам изабрао Назив књиге и Цена .
Унесите Раздвајач . Овде сам унео зарез ( , ).
Изаберите име радног листа где желите да ставите спојени опсег из Удруженог у листбок. Овде сам унео Схеет3 .
(У тренутку када изаберете лист, он ће бити активиран, чак и ако није активан.)
Затим уметните лист. Локација излаза . То је референца ћелије прве ћелије спојеног опсега. Овде сам ставио Б3 .
(У тренутку када унесете Оутпут Лоцатион , излазни опсег ће бити изабран).
И коначно , Унеситеназив Излазног заглавља (Заглавље излазног опсега). Овде сам ставио Цонцатенатед Ранге .
(У тренутку када ставите Излазно заглавље , заглавље излазне колоне ће бити постављено.)
Кликните на ОК . Добићете жељени излаз на жељеној локацији.
Прочитајте више: Како спојити стринг и цео број користећи ВБА
Закључак
Ово је неколико примера у којима можете користити Екцел ВБА за спајање стрингова и променљивих. Надам се да су вам примери све прилично разјаснили. Имате било каквих питања? Слободно нас питајте. И не заборавите да посетите наш сајт ЕкцелВИКИ за више постова и ажурирања.