V tomto článku vytvoríme makro na oddelenie textu v bunke na zvislý stĺpček. Na základe oddeľovača môžeme text v bunke oddeliť. Oddeľovač môže byť buď čiarka, medzera, spätné lomítko atď.
Aby sme vysvetlili fungovanie makra, použili sme URL ako vzorový text v bunke A10. Makro je možné vykonať kliknutím na tlačidlo „Odoslať“.
Po spustení makra vráti výstup v nasledujúcom stĺpci. Textová hodnota v bunke je oddelená do viacerých podreťazcov vo viacerých bunkách v druhom stĺpci.
Logické vysvetlenie
Vytvorili sme makro „texttocolumns“, ktoré vykonáva dve úlohy. Po prvé, vymedzuje reťazec v A10 na viac podreťazcov na základe oddeľovača. V tomto prípade sme ako oddeľovač použili pomlčku (-). Za druhé, prechádza generovanými podreťazcami z viacerých stĺpcov do jedného stĺpca.
Vysvetlenie kódu
Rng.texttocolumns Cieľ: = Rng.Offset (0, 1), DataType: = xlDelimited, _
Kvalifikátor textu: = xlDoubleQuote, po sebe idúci oddeľovač: = True, Other: = True, OtherChar _
:="-"
Vyššie uvedený kód sa používa na oddelenie reťazca v rozsahu „Rng“. Cieľ určuje rozsah umiestnenia, kde sa výstup zobrazí. DataType určuje typ použitého oddeľovača. TextQualifier určuje znak, ktorý sa použije pre textový kvalifikátor. OtherChar určuje znak použitý ako oddeľovač.
Pri kódovaní postupujte podľa nižšie uvedených pokynov
Podtextové stĺpce () „Deklarovanie premenných Dim StartRow, i, LastCol ako Long Dim Rng As Range“ deaktivujúce zobrazovanie upozornení Application.DisplayAlerts = False 'Inicializácia premennej StartRow = 10 Set Rng = Range ("A10")' Oddelenie textu na základe na oddeľovači Rng.texttocolumns Cieľ: = Rng.Offset (0, 1), DataType: = xlDelimited, _ TextQualifier: = xlDoubleQuote, ConsequiveDelimiter: = True, Other: = True, OtherChar _: = "-" 'Nájdenie stĺpca počet buniek obsahujúcich posledný reťazec po oddelení LastCol = Rng.End (xlToRight). Stĺpec 'usporiadanie textu do stĺpcov do riadkov Pre i = 2 Do buniek LastCol (10, i). Vystrihnúť bunky (StartRow, 2) StartRow = StartRow + 1 Ďalej i Koniec podč
Ak sa vám tento blog páčil, zdieľajte ho so svojimi priateľmi na Facebooku. Môžete nás tiež sledovať na Twitteri a Facebooku.
Budeme radi, ak sa nám ozvete, dajte nám vedieť, ako môžeme zlepšiť našu prácu a zlepšiť ju pre vás. Napíšte nám na emailovú stránku