Excel fjölvi til að ákvarða hvort vinnubók sé opin

Þegar þú hugsar um að opna Excel vinnubækur sjálfkrafa skaltu íhuga hvað gæti gerst ef þú reynir að opna bók sem er þegar opin. Í heimi sem ekki er VBA reynir Excel að opna skrána aftur, með skilaboðunum sem sýna að viðvörun um að allar óvistaðar breytingar glatist. Þú getur varið þig gegn slíku með því að athuga hvort tiltekin skrá sé þegar opin áður en þú reynir að opna hana aftur.

Excel fjölvi til að ákvarða hvort vinnubók sé opin

Forðastu þessi viðvörunarskilaboð.

Hvernig macro virkar

Það fyrsta sem þarf að taka eftir um þetta fjölvi er að það er fall, ekki Sub aðferð. Eins og þú munt sjá, gerir þetta fjölvi að aðgerð gerir þér kleift að senda hvaða skráarnöfn sem er til þess til að prófa hvort þessi skrá sé þegar opin.

Kjarni þessa kóða er einfaldur. Þú ert að prófa tiltekið skráarnafn til að sjá hvort hægt sé að úthluta því hlutbreytu. Aðeins er hægt að úthluta opnum vinnubókum við hlutbreytu. Þegar þú reynir að úthluta lokaðri vinnubók á breytuna kemur villa.

Ef hægt er að úthluta tiltekinni vinnubók er vinnubókin opin; ef villa kemur upp er vinnubókinni lokuð.

Aðgerð FileIsOpenTest(TargetWorkbook As String) Sem Boolean
'Skref 1: Lýstu breytunum þínum
    Dim TestBook Sem vinnubók
'Skref 2: Segðu Excel að halda áfram við villu
    Á Villa Resume Next
'Skref 3: Reyndu að tengja markvinnubókina við TestBook
    Setja Prófabók = Vinnubækur (TargetWorkbook)
'Skref 4: Ef engin villa kom upp er vinnubókin þegar opin
    Ef Err.Number = 0 Þá
    FileIsOpenTest = True
    Annar
    FileIsOpenTest = False
    End If
Lokaaðgerð

Það fyrsta sem fjölvi gerir er að lýsa yfir String breytu sem mun halda skráarnafninu sem notandinn velur. TestBook er heiti String breytunnar þinnar.

Í skrefi 2 segirðu Excel að það gæti verið villa við að keyra þennan kóða og, ef villa kemur upp, heldurðu kóðanum áfram. Án þessarar línu myndi kóðinn einfaldlega hætta þegar villa kemur upp. Aftur, þú prófar tiltekið skráarnafn til að sjá hvort hægt sé að úthluta því hlutbreytu. Ef hægt er að úthluta tiltekinni vinnubók er hún opin; ef villa kemur upp er henni lokað.

Í skrefi 3 reynirðu að tengja tiltekna vinnubók við breytuna TestBook Object. Vinnubókin sem þú reynir að úthluta er Strengjabreyta sem heitir TargetWorkbook. TargetWorkbook er send til fallsins í fallyfirlýsingunum (sjá fyrstu línu kóðans). Þessi uppbygging útilokar þörfina á að harðkóða heiti vinnubókar, sem gerir þér kleift að senda það sem breytu í staðinn.

Í skrefi 4 athugarðu einfaldlega hvort villa hafi komið upp. Ef villa kom ekki upp er vinnubókin opin, þannig að þú stillir FileIsOpenTest á True. Ef villa kom upp er vinnubókin ekki opin og þú stillir FileIsOpenTest á False.

Aftur er hægt að nota þessa aðgerð til að meta hvaða skrá sem þú sendir til hennar, í gegnum TargetWorkbook rök hennar. Þetta er fegurðin við að setja macro inn í fall.

Eftirfarandi fjölvi sýnir hvernig á að útfæra þessa aðgerð. Hér kallarðu nýju FileIsOpenTest aðgerðina til að ganga úr skugga um að notandinn geti ekki opnað þegar opna skrá:

Sub Macro1()

'Skref 1: Skilgreindu strengjabreytu

    Dimmt FName sem afbrigði

    Dimma FNFileOnly As String

'Skref 2: GetOpenFilename Method virkjar gluggann

    FName = Application.GetOpenFilename( _

            FileFilter:="Excel vinnubækur,*.xl*", _

            Title:="Veldu vinnubók til að opna", _

            MultiSelect:=False)

'Skref 3: Opnaðu valda skrá ef hún hefur ekki þegar verið opnuð

    Ef FName <> False Þá

    FNFileOnly = StrReverse(Left(StrReverse(FName), _

                 InStr(StrReverse(FName), ") - 1))

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: […]

Hvað þýða villuskilaboðin í Excel?

Hvað þýða villuskilaboðin í Excel?

Fyrir einföld vandamál finnur Solver í Excel venjulega fljótt bestu Solver breytugildin fyrir hlutfallsaðgerðina. En í sumum tilfellum á Solver í vandræðum með að finna Solver breytugildin sem hámarka hlutfallsaðgerðina. Í þessum tilvikum birtir Solver venjulega skilaboð eða villuboð sem lýsir eða ræðir vandræðin sem […]