Екцел ВБА функција за придруживање

ВБА ЈОИН функција користи се за спајање низа подскупова са наведеним разграничачем. Баш као што сама реч значи да јој треба да се придружи две или више жица. Ево неколико улова с тим. Низови су у низу, а користи и раздјелник као функцију спајања. Али раздјелник за конканатну функцију може бити различит између било које двије жице, јер морамо омогућити један разграничник између сваке двије жице користећи функцију придруживања. Али за Јоин ин ВБА морамо да обезбедимо разграничење само једном. Тај раздјелник користи се за придруживање сваког низа. Али овај параметар је такође опционалан. Па шта се дешава када не пружимо разграничење функцији? Када не пружимо никакав разграничитељ функцији, он подразумевано узима „размак“ као разграничник.

Синтакса функције придруживања у Екцелу ВБА

Функција придруживања има следећу синтаксу у Екцел ВБА:

Сада да разумемо аргументе за ВБА Јоин функцију,

  • Извор Арраи: То је низ или низ стрингова који желимо да спојимо.
  • Раздјелник: Ово је разграничник или знак који користимо за разликовање једног низа у други. Раздјелник може бити размак, зарез или потпуно заустављање или било који знак са нашег рачунара.

Излаз који враћа ова функција је низ.

Како се користи Екцел ВБА функција придруживања?

Научићемо како се користи функција ВБА Јоин са неколико примера у Екцелу.

Овде можете преузети овај ВБА Придружите се Екцеловом предлошку овде - ВБА Придружите се Екцел предлошку

Екцел ВБА Јоин - Пример бр. 1

Најприје почнимо с основним примјером. Имамо листу датотеке која се чува у различитим ћелијама нашег радног листа у листу 1. Желимо укупну путању до те локације у другој ћелији. Пут који треба спојити је следећи,

Желимо пут у ћелији Е2. Следите доле наведене кораке да бисте користили Функцију придруживања у Екцелу ВБА.

1. корак: Идите на картицу програмера, а затим кликните на визуални основни да бисте могли да уђете у ВБ Едитор.

Корак 2: Кликните на картицу за уметање и уметните модул у ВБА пројекат.

Корак 3: Сада ћемо прогласити свој први подпроцесу на следећи начин.

Шифра:

 Суб Пример () Крај Суб 

Корак 4: Будући да имамо податке са собом, можемо једноставно користити вредност својства распона да бисмо се придружили путу на следећи начин.

Шифра:

 Под-пример () Распон ("Е2") Вредност = Крај Суб 

Корак 5: Употријебите функцију Јоин како бисте придружили све жице заједно са раздјелником као "\".

Шифра:

 Под-пример () Распон ("Е2"). Вредност = Придружите се (Арраи (распон ("А2"). Вредност, домет ("Б2"). Вредност. Опсег ("Ц2"). Вредност. Распон ("Д2") .Валуе), "\") Крај Суб 

Корак 6: Покрените горњи код притиском на тастер Ф5 или кликом на дугме Репродуцирај и покренућемо резултат у ћелији Е2 као што је приказано у наставку.

Видимо да су сва четири низа спојена са заједничким разграничником који је "\".

Екцел ВБА Јоин - Пример бр. 2

Кренимо напред са практичним примером. На једном листу су имена ученика, ознаке и пропусница или грешка. Желимо да направимо посебну фасциклу са датотекама које садрже да ли је ученик прошао или није успео или је добио оцену. За то ћемо посудити неке од концепата ФСО (Објекти датотечног система) користећи функцију придруживања. Па, подаци изгледају као један доле.

Следите доле наведене кораке да бисте користили Функцију придруживања у Екцелу ВБА.

Корак 1: У истом модулу покренимо следећу потпроцеру на следећи начин.

Шифра:

 Суб Пример2 () Крај Суб 

2. корак: Прогласите две променљиве као ФСО и тектстреам што је метода ФСО на следећи начин.

Шифра:

 Дим ФСО као нови Сцриптинг.ФилеСистемОбјецт Дим Ст Ас Сцриптинг.ТектСтреам 

Корак 3: Сада ћемо прогласити још неке променљиве, Једна као опсег за држање редова и друга као цео број за држање ступаца, а друга као Стринг за смештање придружене вредности низа и путања мапе и једна за креирање имена датотека.

Шифра:

 Дим рв Ас Ранге Дим рес Ас Стринг Дим цол Као Интегер Дим ФолПатх Ас Стринг Дим Резултат као Стринг 

Корак 4: Пошто имамо податке у листу 2, прво активирамо лист 2.

Шифра:

 Радни листови ("Схеет2"). Активирајте 

Корак 5: Сада пребројмо број ступаца у подацима као што следи,

Шифра:

 цол = домет ("А1"). ЦуррентРегион.Цолумнс.Цоунт 

Корак 6: Сада доделимо путању Фолпатху помоћу функције Информације ЕНВИРОН на следећи начин.

Шифра:

 ФолПатх = окружје ("УсерПрофиле") & "\ Десктоп \ Ресулт" 

Корак 7: Провјеримо да ли мапа постоји или не, а ако не дозволимо да је креирамо помоћу ФСО методе, како слиједи.

Шифра:

 Ако није ФСО.ФолдерЕкистс (ФолПатх), тада ФСО.ЦреатеФолдер ФолПатх 

Корак 8: Додајмо имена сачувана помоћу функције компензације на следећи начин.

Шифра:

 За сваки ред у опсегу ("А2", домет ("А1"). Крај (клДовн)) Резултат = рв.Оффсет (0, 1) .Валуе 

Ово ће истовремено отворити датотеке са именима у режиму додавања где ће нове вредности бити последња која ће се додати. Горњи код смо користили тако да ће вредност резултата бити додељена једна по једна.

Корак 9: Будући да функција придруживања користи 1-Д низ, ми ћемо користити апплицатион.транспосе функцију са функцијом придруживања да је претворимо у 1-Д низ на следећи начин.

Шифра:

 Поставите Ст = ФСО.ОпенТектФиле (ФолПатх & "\" & Ресулт & ".клс", ФорАппендинг, Труе) рес = придружи се (Апплицатион.Транспосе (Апплицатион.Транспосе (рв.Ресизе (1, цол) .Валуе)), вбТаб ) Ст.ВритеЛине рес 

Зашто смо користили апплицатион.транспосе? Јер опћенито распон поља (1-Д) мора бити водоравни, што значи да један ред има много ступаца. Сада пошто имамо вертикални распон овде у колони Б, што је резултат да смо искористили ову могућност транспонирања да бисмо је претворили у 1-Д низ. Користили смо ВбТаб као разграничник, тако да су вредности у следећим ћелијама.

Корак 10: Пре него што завршимо за петљу, затворимо датотеку, а затим окончамо петљу на следећи начин.

Укупни код изгледа као онај испод.

Шифра:

 Под-пример2 () Дим ФСО као нови Сцриптинг.ФилеСистемОбјецт Дим Ст ас Сцриптинг.ТектСтреам Дим рв Ас Ранге Дим рес Ас Стринг Дим цол Ас Интегер Дим ФолПатх Ас Стринг Дим Ресулт ас Стринг Ворксхеетс ("Схеет2"). Активирај цол = Ранге (" А1 "). ЦуррентРегион.Цолумнс.Цоунт ФолПатх = Енвиронмент (" УсерПрофиле ") &" \ Десктоп \ Ресулт "Ако није ФСО.ФолдерЕкистс (ФолПатх), тада ФСО.ЦреатеФолдер ФолПатх за сваки ред у распону (" А2 ", Ранге (" А1 "). Крај (клДовн)) Резултат = рв.Оффсет (0, 1) .Валуе Сет Ст = ФСО.ОпенТектФиле (ФолПатх &" \ "& Ресулт &" .клс ", ФорАппендинг, Труе) рес = придружи се (апликација .Транспосе (Апплицатион.Транспосе (рв.Ресизе (1, цол) .Валуе)), вбТаб) Ст.ВритеЛине рес Ст.Цлосе Нект рв Енд Суб 

Корак 11: Сада покренимо горњи код притиском на тастер Ф5, на радној површини можемо видети да је креирана фасцикла са именом резултата као што је приказано у наставку.

12. корак: Отворите фасциклу и имаћемо три датотеке као Пасс, Фаил и Граце.

Ако отворимо било коју од датотека, рецимо да отворимо датотеку Фаил, можемо видети податке за студенте који нису успели.

Ствари које треба запамтити

  • Користи се за спајање низова низа са уобичајеним разграничником.
  • Излаз који враћа ова функција је Стринг.
  • Супротно је функцији Сплит у ВБА.
  • Ако не пружимо раздјелник овој функцији, он подразумевано узима „размак“ као разграничник.
  • Низ у аргументу треба да буде једнодимензионални низ. Ако не, можемо користити конвенционалне методе примене, преместити као што је објашњено у Примеру 2.

Препоручени чланци

Ово је водич за ВБА функцију придруживања. Овде смо расправљали о томе како користити Јоин Фунцтион у Екцелу користећи ВБА код заједно са практичним примерима и довнлоад-ом Екцел предлошка. Можете и да прођете кроз друге наше предложене чланке -

  1. Екцел Дате Фунцтион
  2. Обједините жице у Екцелу
  3. Пријаве ВБА уније
  4. Екцел обједињавајуће ступце

Категорија: