Meriv çawa di nav hucreyek Excel-ê de dubareyan jê dike

  • Vê Parve Bikin
Michael Brown

Sê awayên dîtin û jêbirina dubareyên di nav hucreyek Excel de hene. Tenê ya ku ji bo we çêtirîn dixebite hilbijêrin.

Dema ku ew qala rakirina nirx an rêzikên dubare dike, Microsoft Excel komek vebijarkên cihêreng pêşkêşî dike. Lê gava ku dor tê rakirina nivîsa yekane di nav hucreyek diyar de, Excel tiştek nade… Ne amûr, ne taybetmendî, ne formul, ne tiştek. Ma ew ê me ji gihîştina armanca xwe bihêle? Di tu rewşê de. Ger Excel fonksiyona ku em hewce dike tune be, em herin yeka xwe binivîsin :)

    Çawa peyvên dubare di hucreya Excel de jêbirin

    Pirsgirêk : Di hucreyekê de heman peyv an rêzikên te yên nivîsê hene û dixwazin dûbare û hemû dûbarekirinên paşerojê ji holê rakin.

    Çareserî : fonksiyonek xwerû ya ku ji hêla bikarhêner ve hatî diyar kirin an makroya VBA.

    Fonksiyonek diyarkirî ya bikarhêner ji bo rakirina dubareyên di nav şaneyê de

    Ji bo rakirina nivîsa dubare ya di şaneyê de, hûn dikarin fonksiyona diyarkirî ya bikarhêner (UDF) bikar bînin , bi navê RemoveDupeWords :

    Fonksiyon RemoveDupeWords(text Wek String, Veqetandeka Vebijarkî Wek String = " " ) Wek String Dim ferhenga Wek Object Dim x, part Set ferheng = CreateObject ( "Scripting.Dictionary" ) .CompareMode = vbTextCompare Ji bo Her x In Split(text, veqetandek) beş = Tirm(x) Heke beş "" Û Ne ferheng.Exists(beş) Paşê ferheng.Beşê lê zêde bike, Tiştek Dawî Heke Paşê Heke ferheng.Hejmar > 0 Paşê RemoveDupeWords = Tevlî (ferheng.keys,veqetandî) Else RemoveDupeWords = "" End If Set ferheng = Fonksiyon Dawî Tiştek nîne

    Meriv çawa koda fonksiyonê têxe pirtûka xweya xebatê

    Ji bo ku koda jorîn li Excel-a xwe zêde bike, ev e ya ku divê hûn bikin:

    1. Alt + F11 bikirtînin da ku Edîtorê Visual Basic vekin.
    2. Li ser pencereya çepê, rast-klîk bikin This Workbook û Insert hilbijêrin. > Modul .
    3. Koda jorîn di pencereya Kodê de bihêle.

    Ji bo bêtir agahdarî, ji kerema xwe binêre Çawa VBA têxe koda di Excel de.

    Sîntakseya fonksiyona RemoveDupeWords

    Fonksiyona me ya nû hatî afirandin ji bo rakirina nivîsa dubare ya di hucreyekê de xwedî hevoksaziya jêrîn e:

    RemoveDupeWords(text, [cudaker])

    Li ku :

    • Nivîs (pêdivî ye) - xêzek an şaneyek ku tu dixwazî ​​nivîsa dubare jê jê bibî.
    • Delimiter (vebijarkî) - veqetandeka ku nivîsa dubare jê tê veqetandin. Heger ji holê rabe, ji bo veqetandinê valahiyek tê bikar anîn.

    Fonksiyon ne hesas bi mezinan e , yanî herfên biçûk û yên mezin wekî heman tîpan têne hesibandin.

    Meriv çawa fonksiyona RemoveDupeWords bikar tîne

    Dema ku koda fonksiyonê li pirtûka weya xebatê were zêdekirin, hûn dikarin bi heman awayê ku hûn fonksiyonên çêkirî yên Excel bikar tînin di formulên xwe de bikar bînin.

    Tenê piştî nîşana wekheviyê dest bi nivîsandina navê fonksiyonê bikin, û ew ê di formula intellisense de xuya bibe. Li ser fonksiyonê du caran bikirtînin, û hûn ê wê hebindi hucreyekê de tê xistin. Argumanan diyar bikin, paranteza girtinê binivîsin, Enter bikirtînin û formula we qediya.

    Mînakî, ji bo jêbirina peyvên ducar ên ku bi komma û valahiyek ji A2 hatine veqetandin, jêbirin, formula jêrîn di B2-ê de binivîsin, û dûv re wê di nav çend şaneyan de bikşînin:

    =RemoveDupeWords(A2, ", ")

    Di encamê de, hûn ê lîsteyek ji peyvên yekta an binerêzan hebin ku bi

    =RemoveDupeWords(A2, ", ")

    17>koma û valahiyek :

    Heke hûn tercîh dikin ku lîsteyek ji hev veqetandî bistînin, wê hingê ji bo veqetandekê tenê girokek bikar bînin. :

    =RemoveDupeWords(A2, ",")

    Heke daneya çavkanîya we bi vala veqetandî be, divê argumana duyemîn " " be an jê were derxistin:

    =RemoveDupeWords(A2)

    Wekî her fonksiyonek din a Excel, UDF-a me dema ku daneyên çavkaniyê diguhezîne bixweber hesab dike, ji ber vê yekê encamên we dê her gav nûve bibin.

    Makro VBA ji bo ku nivîsa dubare ji gelek şaneyan yekcar jêbibe

    Heke hûn lê digerin ku bi yek gavê nivîsa dubare ji gelek şaneyan derxînin, wê hingê hûn dikarin ji fonksiyona RemoveDupeWords bang bikin. m di nav makro de. Di vê rewşê de, veqetandek hişk-kodkirî ye, û hûn neçar in ku her carê ku veqetandek diguhezîne koda makroyê nûve bikin. Alternatîf, hûn dikarin çend guhertoyên kodê ji bo veqetandekên herî gelemperî binivisînin, bêje, valahiyek, comma, an komo û cîh, û navên watedar bidin makroyên xwe, mînak. RemoveDupesDelimSpace .

    Koda makroyê wiha ye:

    Bingeha Giştî RemoveDupeWords2() Hucreya Dim wekî Rêjeya Ji Bo Her şaneyek Di Application.Selection cell.Value = RemoveDupeWords(cell.Value, ", " ) Dawiya Piştre Sub

    Di koda jorîn de, veqetandek koma ye û space . Ji bo ku veqetandek cuda bikar bînin, di vê rêzika kodê de ", " bi karakter(ên) din biguhezînin:

    cell.Value = RemoveDupeWords(cell.Value, ", ")

    Nîşe. Ji bo ku makro bixebite, koda wê û koda fonksiyona RemoveDupeWords divê li ser heman modulê were danîn.

    Meriv çawa makroyê bikar tîne

    Koda makroyê têxe pirtûka xweya xebatê an jî pirtûka meya xebatê ya nimûneyê bi kodê veke, û dûv re gavên jêrîn bicîh bîne da ku makroyê bixebitîne.

    1. Rêzikek şaneyên ku hûn dixwazin nivîsa dubare jê jê bibin hilbijêrin.
    2. Alt + F8 bikirtînin da ku qutiya diyalogê ya Makro vebe.
    3. Di lîsteya makroyan de, hilbijêre RemoveDupeWords2 .
    4. Bikirtînin Run .

    Ji bo hûrguliyên bêtir, ji kerema xwe binihêrin Çawa di Excel de makroyekê bimeşîne.

    Nîşe. Ji ber ku çalakiya makroyê nikare bê paşxistin , em bi tundî pêşniyar dikin ku berî ku makroyê bikar bînin pirtûka xweya xebatê rast hilînin. Bi vî rengî, heke tiştek xelet derkeve, hûn dikarin bi hêsanî pirtûka xebatê vekin û vekin, û hûn ê vegerin cihê ku hûn lê bûn. An jî hûn dikarin tenê kopiyek pel(ên) xebatê yên ku dibe ku ji hêla makroyê ve bandor bibin çêbikin.

    Meriv çawa karakterên ducar di şaneyê de jê dike

    Pirsgirêk : Di şaneyê de gelek bûyerên heman karakterê hene, dema ku herDivê şaneyê tenê diyardeyek taybetmendiyek diyar hebe.

    Çareserî : fonksiyonek xwerû ya bikarhêner an makroya VBA.

    Fonksiyonek diyarkirî ji hêla bikarhêner ve ji bo jêbirina tîpên dubare

    Ji bo rakirina karakterên dubarekirî yên di nav şaneyek de ku tenê bûyerên pêşîn dihewîne, hûn dikarin fonksiyona ku ji hêla bikarhêner ve hatî diyar kirin, bi navê RemoveDupeChars :

    bikar bînin. Fonksiyon RemoveDupeChars(nivis Wek String) Wek String Dim Ferheng Wek Object Dim char Wek String Dim encam Wek String Set ferheng = CreateObject ("Scripting.Dictionary") Ji bo i = 1 To Len(text) char = Mid(text, i, 1 ) Ger Ne ferheng.Exists(char) Paşê ferheng.Car lê zêde bike, Tiştek encam = encam & char Dawî Ger Paşê RemoveDupeChars = encam Sazkirina ferheng = Fonksiyon Dawî Tiştek nîne

    Ji bo ku koda fonksiyonê têxe pirtûka xwe ya xebatê, gav tam wekî mînaka berê ne.

    Rakirina hevoksaziya fonksiyonê RakeDupeChars

    Hevoksaziya vê fonksiyona xwerû bi qasî ku dibe hêsan e - tenê argumanek pêdivî ye:

    RemoveDupeChars(text)

    Li ku derê text rêzek an şaneyek e ku hûn jê dixwazin. ji bo ku tîpên ducar jêbikin.

    Fonksiyon hessasîyeta mezin e û tîpên biçûk û mezin wekî tîpên cihê dihesibîne.

    Fonksiyon RemoveDupeChars çawa tê bikaranîn

    Her tiştê ku me li ser karanîna RemoveDupeWords got ji bo RemoveDupeChars rast e. Ji ber vê yekê, bêyî ku biçinpir zêde di teoriyê de ye, ka em rasterast werin ser mînakek.

    Ji bo jêbirina tîpên dubare ji stûna A ya ku di A2 de dest pê dike, vê formula di B2 de têkevin û wê kopî bikin:

    =RemoveDupeChars(A2)

    Wekî ku hûn di wêneya jêrîn de jî dibînin, fonksiyon bi serfirazî cûreyên karakterên cihêreng di nav de tîp, jimar û sembolên taybetî bi serfirazî digire:

    Serişte. Ger karakterên we bi hin veqetanker wek valahiyek, komma an jî dafikê ji hevûdu veqetînin, wê hingê fonksiyona RemoveDupeWords wekî ku di mînaka berê de tê xuyang kirin bikar bînin.

    Makroya VBA ji bo ku heman tîpan ji şaneyek derxîne

    Wekî RemoveDupeWords , fonksiyona RemoveDupeChars jî dikare ji nav makroyekê were bang kirin:

    Gelemperî Bin RemoveDupeChars2() Dim xane Wek Rêze Ji Bo Her şaneyek Di Application.Selection cell.Value = RemoveDupeChars(cell.Value) Dawiya Paşê Sub

    Ji ber ku ev UDF tu veqetandek bikar nayîne, hûn neçar in ku di nav de tu verastkirinê bikin kod.

    Nîşe. Ji bo ku makro bixebite, koda wê û koda RemoveDupeChars UDF divê li ser heman modulê di edîtorê VBA de were danîn.

    Meriv çawa makroyê bi kar tîne

    Bihesibînin ku we berê koda makroyê xistiye nav pirtûka xwe ya xebatê an jî pirtûka meya xebatê ya nimûneya ku kod tê de vekiriye, makroyê bi vî rengî bidin destpêkirin.

    1. Rêzikek şaneyên ku hûn dixwazin tîpên dubare jê jê bibin hilbijêrin.
    2. Alt + F8 bikirtînin da ku diyaloga Makro vebe.box.
    3. Di lîsteya makroyan de, RemoveDupeChars2 hilbijêre.
    4. Bikirtînin Run .

    Bi Ultimate Suite re binerdeyên ducar rakin

    Di destpêka vê tutorialê de, hate gotin ku Microsoft Excel ji bo rakirina dubareyên di hundurê şaneyê de taybetmendiyek binavkirî tune. Lê Ultimate Suite me dike!

    Hûn dikarin wê di Duplicate Remover menuya daketî ya li ser Ablebits Data , di Dedupe<2 de bibînin> kom. Ger vebijarka Rêvekirina Binarên Ducarî di Excel-a we de xuya nake, piştrast bikin ku we guhertoya herî dawî ya Ultimate Suite sazkirî ye (ceribandinek belaş dikare li vir were daxistin).

    Ji bo ku di 5 çirkeyan de peyvên dubare an nivîsê ji gelek şaneyan derxînin (ji her gavê çirkeyek :), tiştê ku divê hûn bikin ev e:

    1. Daneyên çavkaniya xwe hilbijêrin û dest bi Berbihejmarên Ducarî Rake Amûra.
    2. Veqetandek diyar bike.
    3. Pênase bike ka veqetandekên li pey hev wek yek (pêşbirk) binirxîne yan na.
    4. Hilbijêre ka ji bo lêgerîna hesasiya biçûk an nehessasiya biçûk hilbijêre.
    5. Bikirtînin Rakirin .

    Done! Bi VBA û formulan re mijûl nabe, tenê encamên bilez û rast.

    Ji bo bêtir agahdarî li ser vê pêveka hêja, ji kerema xwe biçin rûpela wê ya sereke. An jî hê çêtir, guhertoyek nirxandinê ya li jêr dakêşin û wê biceribînin!

    Bi vî rengî meriv nivîsa dubare di şaneyê de jêbirin.Ji bo xwendinê ez spasiya te dikim û hêvî dikim ku hefteya pêş me we li ser bloga xwe bibînim!

    Daxistinên berdest

    Mînakên rakirina dubareyên di hucreyê de (pelê .xlsm)

    Ultimate Suite 14 Guhertoya rojane ya bi tevahî fonksiyonel (pelê .exe)

    Michael Brown dilxwazek teknolojiyê ya dilsoz e ku bi hewesek hêsankirina pêvajoyên tevlihev bi karanîna amûrên nermalavê ye. Bi zêdetirî deh salan ezmûnek di pîşesaziya teknolojiyê de, wî jêhatîbûna xwe di Microsoft Excel û Outlook, û her weha Google Sheets û Docs de pêş xist. Bloga Michael ji bo parvekirina zanyarî û pisporiya xwe bi kesên din re veqetandî ye, ji bo baştirkirina hilberî û karîgeriyê serişte û dersên hêsan-şopandinê peyda dike. Çi hûn pisporek demsalî ne an jî destpêkek in, bloga Michael ji bo ku hûn herî zêde ji van amûrên nermalava bingehîn sûd werbigirin, têgihiştinên hêja û şîretên pratîkî pêşkêşî dike.