ВБА СубСтринг - Како издвојити подниз користећи ВБА функције?

Преглед садржаја

Екцел ВБА подниз

СубСтринг је део низа или дела или се карактер низа назива „СубСтринг“. Постоје три врсте функција подниза у ВБА ЛЕФТ, РИГХТ и МИД, сличне су поднизима радног листа у екцелу.

Низ није ништа друго до низ знакова, а знакови могу бити абецеда, бројеви, посебни знакови, а такође могу комбиновати све ово.

Често у Екцелу, када радимо са подацима, а то је низ, морамо добити само део низа да бисмо олакшали своју сврху. Можда нам неће бити потребан цео низ, али нам је потребан само део низа за нашу употребу. На пример, ако имате име „Сацхин Тендулкар“, можда ће вам требати само први део имена, тј. Само „Сацхин“. Ово се назива подниз у низу у програму Екцел ВБА. Да бисмо се позабавили овим низовима, имамо уграђене функције у оквиру функције ТЕКСТ у категорији екцел.

У овом чланку ћемо разговарати о томе како добити подниз из целог низа у ВБА.

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

Да бисмо издвојили подниз из низа, имамо неке уграђене функције текста, а неке од важних функција су ЛЕВО, ДЕСНО, ИНСТР и МИД у екцелу. Функција Инстр послужиће као помоћна функција за остале три функције.

Видећемо како да користимо ове функције за практично издвајање поднизова. Прочитајте примере у наставку да бисте их разумели.

Пример # 1 - Коришћење леве функције

Ако имате пуно име као „Сацхин Тендулкар“ и треба вам само прво име да бисте га извукли као подниз, користите следећи код да бисте га добили.

Корак 1: Креирајте име макронаредбе и дефинишите две променљиве као Стринг.

Шифра:

Суб СубСтринг_Екампле1 () Дим ФуллНаме Ас Стринг Дим ФирстНаме Ас Стринг Енд Суб

Корак 2: Сада променљивој ФуллНаме доделите име „Сацхин Тендулкар“ .

Шифра:

Суб СубСтринг_Екампле1 () Дим ФуллНаме Ас Стринг Дим ФирстНаме Ас Стринг ФуллНаме = "Сацхин Тендулкар" Енд Суб

Корак 3: Сада променљива ФуллНаме садржи вредност „Сацхин Тендулкар.“ Сада из пуног имена морамо да издвојимо екцел ВБА подниз. Дакле, доделите вредност променљивој ФирстНаме кроз функцију ЛЕФТ.

Шифра:

Суб СубСтринг_Екампле1 () Дим ФуллНаме Ас Стринг Дим ФирстНаме Ас Стринг ФуллНаме = "Сацхин Тендулкар" ФирстНаме = Лефт (Енд Суб

Корак 4: Први аргумент функције ВБА ЛЕФТ је Стринг; то је оно што је пуна вредност или пуни низ. У овом примеру, наша пуна вредност или низ је „Сацхин Тендулкар“, који је додељен променљивој ФуллНаме.

Дакле, као аргумент наведите променљиву ФуллНаме .

Шифра:

Суб СубСтринг_Екампле1 () Дим ФуллНаме Ас Стринг Дим ФирстНаме Ас Стринг ФуллНаме = "Сацхин Тендулкар" ФирстНаме = Лефт Енд Суб

Корак 5: Следећи аргумент је колико нам знакова треба из низа који смо дали, тако да нам је у овом случају потребно прво име „ Сацхин “, тако да нам треба 6 знакова са леве стране.

Шифра:

Суб СубСтринг_Екампле1 () Дим ФуллНаме Ас Стринг Дим ФирстНаме Ас Стринг ФуллНаме = "Сацхин Тендулкар" ФирстНаме = Лефт (ФуллНаме, 6) Енд Суб

Корак 6: Сада покажите резултат у оквиру за поруке у ВБА.

Шифра:

Суб СубСтринг_Екампле1 () Дим ФуллНаме Ас Стринг Дим ФирстНаме Ас Стринг ФуллНаме = "Сацхин Тендулкар" ФирстНаме = Лефт (ФуллНаме, 6) МсгБок ФирстНаме Енд Суб

Корак 7: Покрените макронаредбу да видите име као подниз у оквиру за поруку.

Пример # 2 - Набавите СубСтринг с десне стране

Као што смо на сличан начин издвојили подниз са леве стране, можемо и са десне. Узмимо за пример исто име.

Корак 1: Дефинишите две променљиве као Стринг.

Шифра:

Суб СубСтринг_Екампле2 () Дим ФуллНаме Ас Стринг Дим ЛастНаме Ас Стринг Енд Суб

Корак 2: Као и обично, променљивој ФуллНаме доделите вредност као „Сацхин Тендулкар“.

Шифра:

Суб СубСтринг_Екампле2 () Дим ФуллНаме Ас Стринг Дим ЛастНаме Ас Стринг ФуллНаме = "Сацхин Тендулкар" Енд Суб

Корак 3: Сада, за променљиву ЛастНаме, доделите вредност кроз РИГХТ екцел функцију.

Шифра:

Суб СубСтринг_Екампле2 () Дим ФуллНаме Ас Стринг Дим ЛастНаме Ас Стринг ФуллНаме = "Сацхин Тендулкар" ЛастНаме = Ригхт (Енд Суб

Корак 4: Стринг је наше пуно име, зато наведите променљиву.

Шифра:

Суб СубСтринг_Екампле2 () Дим ФуллНаме Ас Стринг Дим ЛастНаме Ас Стринг ФуллНаме = "Сацхин Тендулкар" ЛастНаме = Ригхт (ФуллНаме, Енд Суб

Корак 5: Дужина је колико знакова нам треба с десне стране. На десној страни нам треба 9 знакова .

Шифра:

Суб СубСтринг_Екампле2 () Дим ФуллНаме Ас Стринг Дим ЛастНаме Ас Стринг ФуллНаме = "Сацхин Тендулкар" ЛастНаме = Ригхт (ФуллНаме, 9) Енд Суб

Корак 6: Прикажите ову вредност у оквиру за поруку .

Шифра:

Суб СубСтринг_Екампле2 () Дим ФуллНаме Ас Стринг Дим ЛастНаме Ас Стринг ФуллНаме = "Сацхин Тендулкар" ЛастНаме = Ригхт (ФуллНаме, 9) МсгБок ЛастНаме Енд Суб

Корак 7: Покрените макро. Видећемо презиме у оквиру за поруку.

Пример # 3 - Коришћење функције Инстр

У горњим примерима имали смо само једно име и директно смо навели колико нам је знакова потребно лево и десно. Али у случају многих имена, знакови имена и презимена нису исти, они ће се разликовати од имена до имена. У тим случајевима не можемо директно доставити број знакова како бисмо могли да користимо функцију Инстр.

Функција Инстр ће вратити испоручени положај знака у низу. На пример, погледајте доњи код.

Шифра:

Суб СубСтринг_Екампле3 () Затамни положај као положај низа = ИнСтр (1, "Сацхин", "а") МсгБок Поситион Енд Суб

ИнСтр (1, „Сацхин“, „а“), ово ће идентификовати положај слова „а“ као прво појављивање у низу „Сацхин“. У овом случају слово, „а“ је на другом месту. Тако ћемо добити 2 као резултат у оквиру за поруку.

Овако, помоћу функције Инстр можемо пронаћи размак између имена и презимена.

На пример, погледајте доље име које имам на табели Екцел.

Помоћу функције ЛИЈЕВО, ДЕСНО и Инстр можемо издвојити поднизове. Испод је код за издвајање Имена.

Шифра:

Суб ФирстНаме () Дим К ас Лонг Дим ЛР Ас Лонг ЛР = Ћелије (Редови.број, 1). Крај (кИУп). Ред за К = 2 До ЛР Ћелија (К, 2) .Вредност = Лево (Ћелије (К, 1) .Валуе, ИнСтр (1, Ћелије (К, 1) .Валуе, "") - 1) Следећи К Крај Суб

Покрените макронаредбу и у пољу за поруке видите име као подниз.

Користите доњи код за издвајање презимена као подниза.

Шифра:

Суб ЛастНаме () Дим К ас Лонг Дим ЛР Ас Лонг ЛР = Ћелије (Редови.број, 1). Крај (кИУп). Ред за К = 2 До ЛР Ћелија (К, 3) .Вредност = Десно (Ћелије (К, 1) .Валуе, Лен (Ћелије (К, 1)) - ИнСтр (1, Ћелије (К, 1) .Вредност, "")) Следећи К Крај Суб

Покрените макро и видећемо презиме у оквиру за поруку.

Дугме макро сам доделио радном листу, преузмем радну свеску и користим их.

Занимљиви Чланци...