Awantaj û kêmasiyên fonksiyonên xwerû yên li Excel

  • Vê Parve Bikin
Michael Brown

Em rêze dersên der barê fonksiyonên diyarkirî yên bikarhêner de didomînin. Di gotarên xwe yên berê de, em bi fonksiyonên xwerû nas kirin û fêr bûn ka meriv wan çawa çêdike û bikar tîne. Di vê destanê de em ê li taybetmendiyên karanîna van fonksiyonan binêrin û cûdahiyên di navbera UDF û makroyên VBA de bibînin.

Di vê tutoriyê de, em ê van tiştan hîn bibin:

    Em hêvî dikin ku ev gotar dê zanîna we ya UDF-ê zêde bike û ji we re bibe alîkar ku hûn di pirtûkên xebatê yên Excel-ê de hê bêtir bi bandor bikar bînin.

    Gelo UDF û Macro heman tişt in?

    Herdu fonksiyonên diyarkirî yên bikarhêner û VBA makro bi karanîna edîtorê VBA têne afirandin. Ferqa di navbera wan de çi ye û meriv tercîhê dide çi?

    Cûdahiya herî girîng ev e ku fonksiyon hesaban dike, û makro hin çalakiyan pêk tîne. Pêdivî ye ku fonksiyonek diyarkirî ya bikarhêner, mîna fonksiyonek birêkûpêk Excel, di hucreyekê de were nivîsandin. Di encama pêkanîna wê de, hucre hin nirx vedigerîne. Di heman demê de, ne gengaz e ku meriv nirxên hucreyên din, û hem jî hin taybetmendiyên hucreya heyî (bi taybetî, formatkirin) biguhezîne. Lêbelê, hûn dikarin fonksiyonek xwerû di formulên formatkirina şertî de bikar bînin.

    Makro UDF û VBA bi awayên cûda dixebitin. Mînakî, dema ku hûn di Edîtorê Visual Basic de UDF diafirînin, hûn bi daxuyaniyek Fonksiyon dest pê dikin û bi Fonksiyonek Dawî diqedin. Dema ku hûn makroyek tomar dikin, hûn bi a dest pê dikinDaxuyaniya Sub û bi End Sub-ê bi dawî bibe.

    Hemû operatorên Visual Basic nikarin ji bo afirandina UDF-an werin bikar anîn. Ji ber vê sedemê, makro çareseriyek piralîtir e.

    Makro ne hewce ye ku bikarhêner tu argumanan derbas bike (ne jî dikare argumanan qebûl bike), berevajî fonksiyonek ku ji hêla bikarhêner ve hatî destnîşankirin.

    Mesele ev e ku hin fermanên makroyan dikarin navnîşanên hucreyê an hêmanên formatkirinê bikar bînin (mînak, reng). Ger hûn hucreyan biguhezînin, rêz û stûnan lê zêde bikin an jê bikin, formata hucreyan biguhezînin, wê hingê hûn dikarin makroyên xwe bi hêsanî "bişkînin". Ev yek bi taybetî gengaz e ku hûn pelê xwe bi hevkarên ku nizanin makroyên we çawa dixebitin re parve bikin.

    Mînakî, pelek we heye ku bi makroyek bêkêmasî dixebite. Ev formula ji sedî hucreya A1 heta A4 hesab dike. Makro rengê van şaneyan dibe zer. Di hucreya çalak de formatek ji sedî tê danîn.

    Heke hûn an kesek din biryar bide ku rêzek nû têxe, makro dê berdewam bike li nirxê di şaneya A4 de bigere ( parametreya 4,1 ya di UDF-ya we de), têk diçe û xeletiyek vedigerîne:

    Di vê rewşê de, xeletî ji ber dabeşkirina bi sifirê derketiye (di nirxek nû lê zêdekirî de tune dor). Ger makro pêk bîne, em bibêjin berhevok, wê hingê hûn ê tenê encamek xelet bistînin. Lê hûn ê pê nizanin.

    Berevajî makroyan, fonksiyonên diyarkirî yên bikarhêner nikarin bibin sedema rewşek wusa ne xweş.

    Li jêr hûn performansaheman hesabên ku UDF bikar tînin. Li vir hûn dikarin şaneyên têketinê li her cîhê pelê xebatê destnîşan bikin û dema ku hûn wê biguhezînin hûn ê bi pirsgirêkên neçaverêkirî re rûbirû nebin.

    Min formula jêrîn di C3 de nivîsand:

    =UDF_vs_Macro(A1,A4)

    Piştre min rêzek vala xist, û formula guherî wek ku hûn di dîmena jorîn de dibînin.

    Niha em dikarin şaneyek têketinê an şaneyek bi fonksiyonek li her deverê biguhezînin. Encam dê her dem rast be.

    Feydeyek din a karanîna UDF-an ew e ku gava nirxa di şaneya têketinê de diguhezîne ew bixweber nûve dikin. Dema ku makro bikar tînin, divê hûn her gav piştrast bikin ku hemî dane nûvekirî ne.

    Li gorî vê nimûneyê, ez tercîh dikim ku li ku derê gengaz be UDF-an bikar bînim û makroyan tenê ji bo çalakiyên din ên ne-hesabkirinê bikar bînim.

    Sînor û dezawantajên bikaranîna UDF

    Min berê li jor behsa avantajên UDF kiribû. Kurteçîroka dirêj, ew dikare hesabên ku bi fonksiyonên standard Excel re ne mumkun in pêk bîne. Wekî din, ew dikare formulên dirêj û tevlihev hilîne û bikar bîne, wan veguherîne fonksiyonek yekane. Û hûn ê ne mecbûr in ku formulan tevlihev car bi car binivîsin.

    Niha em bi hûrgulî li ser kêmasiyên UDF biaxivin:

    • Afirandina UDF-an karanîna VBA hewce dike. Li dora wê rê tune. Ev tê vê wateyê ku bikarhêner nikare UDF-ê bi heman rengî wekî makroyek Excel tomar bike. Divê hûn bi xwe UDF-ê ava bikin. Lêbelê, hûn dikarin kopî bikin ûbeşên koda makroya ku berê hatî tomarkirin di fonksiyona xwe de bixin. Hûn tenê hewce ne ku hûn ji sînorên fonksiyonên xwerû haydar bin.
    • Kêmasiyek din a UDF ev e ku mîna her fonksiyonek din a Excel ew dikare tenê nirxek yek an rêzek nirxan vegerîne hucreyek. Ew tenê hesaban dike, ne tiştek din.
    • Heke hûn dixwazin pirtûka xwe ya xebatê bi hevkarên xwe re parve bikin, bê guman UDF-yên xwe di heman pelê de hilînin. Wekî din, fonksiyonên weyên xwerû dê ji wan re nexebitin.
    • Fonksiyonên xwerû yên ku bi edîtorê VBA-yê hatine çêkirin ji fonksiyonên asayî hêdîtir in. Ev bi taybetî di tabloyên mezin de diyar dibe. Mixabin, VBA heta nuha zimanek bernamesaziyê pir hêdî ye. Ji ber vê yekê, heke gelek daneyên we hebin, hewl bidin ku gava ku gengaz be fonksiyonên standard bikar bînin, an jî bi karanîna fonksiyona LAMBDA UDF-yan biafirînin.

    Sînoriyên Karên Xweser:

    • UDF in ji bo pêkanîna hesaban û vegerandina nirxek hatî çêkirin. Ew nikarin li şûna makroyan werin bikar anîn.
    • Ew nikarin naveroka şaneyên din biguherînin (tenê şaneya çalak).
    • Divê navên fonksiyonan li gorî hin rêzikan tevbigerin. Mînakî, hûn nikanin navek ku bi navek fonksiyonek Excel-ê ya xwemalî an navnîşek hucreyê re têkildar bi kar bînin, wek AB123.
    • Fonksiyonek weya xwerû nikare di nav de valahiyan bigire, lê ew dikare karaktera jêrîn tê de hebe. Lêbelê, rêbaza bijartî ew e ku di destpêka her nû de tîpên mezin bikar bîninpeyva (mînak, GetMaxBetween).
    • UDF nikare hucreyan li deverên din ên pelxebatê kopî bike û bihêle.
    • Ew nikarin pelgeya xebatê ya çalak biguherînin.
    • UDF dikarin' Di şaneya çalak de formatkirinê biguherînin. Heke hûn dixwazin dema ku nirxên cihêreng têne xuyang kirin şeklê şaneyek biguherînin, divê hûn qalibkirina şertê bikar bînin.
    • Ew nikarin pirtûkên zêde vekin.
    • Ji bo xebitandina makroyan bi karanîna Application.OnTime nikarin werin bikar anîn. .
    • Fonksiyonek diyarkirî ji hêla bikarhêner ve bi karanîna tomarkera makro nayê afirandin.
    • Fonksiyon di Pêşvebir > Danûstandinên makro .
    • Fonksiyonên we dê di qutiya diyalogê de ( Têxe > Fonksiyon ) û di navnîşa fonksiyonan de tenê heke wekî Geştî werin ragihandin (ev vebijark e, heya ku wekî din neyê destnîşan kirin).
    • Tu fonksiyonên ku wekî Taybetî hatine ragihandin dê di navnîşa taybetmendiyê de xuya nebin.

    Karek pir hêdî , û her weha hin qedexeyên di karanînê de, dibe ku we bifikire: "Kêrhatina van fonksiyonên xwerû çi ye?"

    Ew dikarin bikêrhatî bin, û heke em bala xwe bidin astengiyên ku li ser wan têne ferz kirin, bikin. Ger hûn fêr bibin ka meriv çawa bi rêkûpêk UDF-an biafirîne û bikar bîne, hûn dikarin pirtûkxaneya fonksiyonên xwe binivîsin. Ev ê şiyana we ya xebata bi daneyan di Excel de pir berfireh bike.

    Li gorî min, fonksiyonên xwerû dem-teserkerên mezin in. Û çi li ser te? Ma we berê hewl da ku UDF-ya xwe biafirînin? Te ecibandji fonksiyonên bingehîn ên Excel çêtir e? Ka em wê di Şîroveyan de nîqaş bikin :)

    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.