Að flokka nöfn á VBA Way

Hefur þú einhvern tíma fengið Excel vinnublað með nöfnum, þar sem öll nöfnin eru öll í einum reit? Verkefni þitt er að skipta nöfnunum í fornafn, eftirnafn - ferli sem kallast þáttun. Þú getur prófað að nota formúlu og/eða aðgerð til að hjálpa, eða þú getur notað Visual Basic for Applications (VBA) kóða.

Algeng nálgun er að finna bilið á milli fornafns og eftirnafns, og voila! – þú veist hvar fornafnið endar og eftirnafnið byrjar.

Nema þú hafir nöfn sem eru flóknari í uppbyggingu, eins og Dr. William Healer eða Zak H. Sneezer III.

Hér er dæmigerð VBA rútína sem lítur í gegnum hvert nafn, staf fyrir staf, þar til það finnur bil. Síðan setur það það sem er vinstra megin við bilið í einn dálk og það sem er hægra megin við bilið í dálknum á eftir.

Gerðu þar til ActiveCell = "
thename = ActiveCell.Value
Fyrir að leita = 1 Til Len(nafn)
 Ef Mid(thename, looking, 1) = " " Þá
    ActiveCell.Offset(0, 1) = Vinstri(nafnið, útlit - 1)
    ActiveCell.Offset(0, 2) = Mið(nafn, útlit + 1)
    Hætta fyrir
 End If
Næst
ActiveCell.Offset(1, 0). Virkja
Lykkju

Þessi venja er gagnleg við að flokka nöfn með aðeins einu bili, eins og Harvey Wallbanger eða Tom Collins. Eftirfarandi tafla sýnir niðurstöðuna af því að keyra kóðann á nöfnum með fleiri en einu bili:

Dr. William Healer Dr. William Healer
Zak H. Sneezer III Zak H. Sneezer III

Þetta er ekki góð þáttunartilraun. Það virkaði fínt til að flokka Harvey Wallbanger og Tom Collins en ekki eins vel fyrir hin nöfnin.

Hér er þróaðri tækni sem skilar betri árangri. Hafðu í huga að þáttun nöfn er ekki fullkomin, en að fara að þessu með þessum hætti gerir betur.

Tæknin er sú að telja hversu mörg rými eru í fullu nafni og skipta svo í sundur nafnið á einu rýminu. Sérstaklega, ef það eru þrjú eða fleiri rými, notaðu rýmið tvö inn frá hægri sem brotrými; annars skaltu nota rýmið lengst til hægri sem brotrými.

Þetta ferli er keyrt í VBA undirrútínu sem kallar á fall á meðan það er farið í gegnum nöfnin. Fjöldi bila er ákvarðaður snemma í aðallykkjunni og aðgerðin skilar stöðunni þar sem brotbilið er.

Sub parse_names()
  Dimma nafnið sem strengur
  Dimma bil sem heiltala
  Gerðu þar til ActiveCell = "
    thename = ActiveCell.Value
    bil = 0
    Fyrir próf = 1 Til Len(nafn)
      Ef Mid(thename, test, 1) = " " Þá
      bil = bil + 1
    End If
  Næst
  Ef bil >= 3 Þá
    break_space_position = space_position(" ", nafnið, bil - 1)
  Annar
    break_space_position = space_position(" ", nafn, bil)
  End If
  Ef bil > 0 Þá
    ActiveCell.Offset(0, 1) = Left(nafn, break_space_position - 1)
    ActiveCell.Offset(0, 2) = Mid(thename, break_space_position + 1)
  Annar
    ' þetta er fyrir þegar fullt nafn er bara eitt nafn án bils
    ActiveCell.Offset(0, 1) = nafnið
  End If
  ActiveCell.Offset(1, 0). Virkja
  Lykkju
End Sub
Aðgerð space_position(hvað_á_leita_að sem streng, hvað_á_leita_í sem streng, bil_telja sem heiltala) Sem heiltala
  Dim loop_counter Sem heiltala
    bil_staða = 0
    Fyrir loop_counter = 1 Til space_count
      space_position = InStr(lykkja_teljari + bil_staða, hvað_á að leita, hvað_á að leita að)
      Ef space_position = 0 Þá Hætta fyrir
    Næst
Lokaaðgerð

Eftirfarandi tafla sýnir hvernig útkoman lítur út núna:

Dr. William Healer Dr. William Heilari
Zak H. Sneezer III Zak H. Sneezer III

Nafnagreining er jafnmikil list og tæknilegt ferli. Í þessu öðru dæmi eru öll fornöfn og eftirnöfn í réttum dálkum. Ef nýtt langt nafn með fimm eða fleiri bilum væri kynnt gæti rútínan misskilið þáttunina og VBA kóðann þyrfti að setja meira skilyrt próf í það. En þetta dæmi er nú á réttri leið sem iðnaðarstyrkt nafngreiningarútína.

Leave a Comment

Námundun tölur í Excel 2007 með ROUND, ROUNDUP og ROUNDDOWN

Námundun tölur í Excel 2007 með ROUND, ROUNDUP og ROUNDDOWN

Fyrir þá sem vilja læra um aðferðir eins og <strong>ROUND</strong>, <strong>ROUNDUP</strong> og <strong>ROUNDDOWN</strong> í Excel 2007, skoðaðu þessa skref-fyrir-skref leiðbeiningu um hvernig á að rúnna tölur á réttan hátt.

Hvernig á að koma í veg fyrir að Microsoft Word opni skrár í skrifvarinn ham á Windows

Hvernig á að koma í veg fyrir að Microsoft Word opni skrár í skrifvarinn ham á Windows

Hvernig á að koma í veg fyrir að Microsoft Word opni skrár í skrifvarandi ham á Windows. Microsoft Word opnar skrár í skrifvarandi ham, sem gerir það ómögulegt að breyta þeim? Ekki hafa áhyggjur, aðferðirnar eru hér að neðan

Hvernig á að laga ranga prentun á Microsoft Word skjölum

Hvernig á að laga ranga prentun á Microsoft Word skjölum

Hvernig á að laga villur við prentun á röngum Microsoft Word skjölum Villur við prentun Word skjala með breyttu letri, sóðalegar málsgreinar, texta sem vantar eða glatað efni eru nokkuð algengar. Hins vegar ekki

Eyddu penna- og auðkennisteikningum á PowerPoint-skyggnunum þínum

Eyddu penna- og auðkennisteikningum á PowerPoint-skyggnunum þínum

Ef þú hefur notað pennann eða hápunktarann ​​til að teikna á PowerPoint glærurnar þínar meðan á kynningu stendur geturðu vistað teikningarnar fyrir næstu kynningu eða eytt þeim út svo næst þegar þú sýnir þær byrjarðu á hreinum PowerPoint glærum. Fylgdu þessum leiðbeiningum til að eyða penna- og auðkenningarteikningum: Að eyða línum einni á […]

Innihald stílasafns í SharePoint 2010

Innihald stílasafns í SharePoint 2010

Stílsafnið inniheldur CSS skrár, Extensible Stylesheet Language (XSL) skrár og myndir sem notaðar eru af fyrirfram skilgreindum aðalsíðum, síðuuppsetningum og stjórntækjum í SharePoint 2010. Til að finna CSS skrár í stílasafni útgáfusíðunnar: Veldu Site Actions→ View Allt efni á síðunni. Innihald síðunnar birtist. Style bókasafnið er staðsett í […]

Snið tölur í þúsundum og milljónum í Excel skýrslum

Snið tölur í þúsundum og milljónum í Excel skýrslum

Ekki yfirgnæfa áhorfendur með stórkostlegum tölum. Í Microsoft Excel geturðu bætt læsileika mælaborða og skýrslna með því að forsníða tölurnar þínar þannig að þær birtast í þúsundum eða milljónum.

Hvernig á að deila og fylgja SharePoint síðum

Hvernig á að deila og fylgja SharePoint síðum

Lærðu hvernig á að nota SharePoints samfélagsnetverkfæri sem gera einstaklingum og hópum kleift að eiga samskipti, vinna saman, deila og tengjast.

Hvernig á að umbreyta dagsetningum í Julian snið í Excel

Hvernig á að umbreyta dagsetningum í Julian snið í Excel

Julian dagsetningar eru oft notaðar í framleiðsluumhverfi sem tímastimpill og fljótleg tilvísun fyrir lotunúmer. Þessi tegund af dagsetningarkóðun gerir söluaðilum, neytendum og þjónustuaðilum kleift að bera kennsl á hvenær vara var framleidd og þar með aldur vörunnar. Julian dagsetningar eru einnig notaðar í forritun, hernum og stjörnufræði. Mismunandi […]

Hvernig á að búa til Access Web App

Hvernig á að búa til Access Web App

Þú getur búið til vefforrit í Access 2016. Svo hvað er vefforrit eiginlega? Jæja, vefurinn þýðir að hann er á netinu og app er bara stytting fyrir „umsókn“. Sérsniðið vefforrit er gagnagrunnsforrit á netinu sem hægt er að nálgast úr skýinu með vafra. Þú smíðar og viðheldur vefforritinu í skrifborðsútgáfunni […]

Quick Launch Bar í SharePoint 2010

Quick Launch Bar í SharePoint 2010

Flestar síður í SharePoint 2010 sýna lista yfir flakktengla á flýtiræsingarstikunni vinstra megin á síðunni. Flýtiræsingarstikan sýnir tengla á innihaldsefni vefsvæða eins og lista, bókasöfn, síður og útgáfusíður. Flýtiræsingarstikan inniheldur tvo mjög mikilvæga tengla: Tengill á allt efni vefsvæðis: […]