Applies ToAccess for Microsoft 365 Access 2024 Access 2021 Access 2019 Access 2016

Huomautus: Tässä ohjeaiheessa kuvattu funktio, menetelmä, objekti tai ominaisuus ei ole käytössä, jos Microsoft Jet Expression Service toimii eristetyssä tilassa, mikä estää mahdollisesti vahingollisten lausekkeiden arvioimisen. Katso lisätietoja eristetystä tilasta ohjeen ”Eristetty tila” -kohdasta.

Luo ja palauttaa viittauksen ActiveX-objektiin.

Syntaksi

CreateObject ( luokka [, palvelinnimi] )

CreateObject-funktion syntaksilla on seuraavat argumentit:

Argumentti

Kuvaus

luokka

Pakollinen. Variantti (merkkijono). Sovelluksen nimi ja luotavan objektin luokka.

palvelinnimi

Valinnainen. Variantti (merkkijono). Sen verkkopalvelimen nimi, johon objekti luodaan. Jos palvelinnimi on tyhjä merkkijono (""), käytetään paikallista tietokonetta.

Luokka -argumentti käyttää syntaksia sovellusnimi.objektilaji ja sisältää seuraavat osat:

Osa

Kuvaus

sovelluksen nimi

Pakollinen. Muuttuja (merkkijono). Sen sovelluksen nimi, joka toimittaa objektin.

objektilaji

Pakollinen. Variantti (merkkijono). Luotavan objektin laji tai luokka.

Huomautuksia

Jokaisessa automaattisia toimintoja tukevassa sovelluksessa on vähintään yksi objektilaji. Esimerkiksi tekstinkäsittelyohjelmassa voi olla Sovellus-objekti, Asiakirja-objekti ja Työkalurivi-objekti.

Voit luoda ActiveX-objektin määrittämällä CreateObject-funktion palauttaman objektin objektimuuttujan:

Huomautus: Seuraavissa esimerkeissä kerrotaan, kuinka tätä funktiota käytetään Visual Basic for Applications (VBA) -moduulissa. Jos haluat lisätietoja VBA:n käytöstä, valitse Sovelluskehittäjän opasHaku-kentän viereisestä luettelosta ja anna yksi tai useampi hakuehto hakukenttään.

' Declare an object variable to hold the object ' reference. Dim as Object causes late binding. Dim ExcelSheet As ObjectSet ExcelSheet = CreateObject("Excel.Sheet")

Tässä esimerkissä automatisoimme Excel-laskentataulukko-objektin Access-tietokannasta. Tämä koodi käynnistää sovelluksen, joka luo objektin, tässä tapauksessa Microsoft Excel -laskentataulukon. Kun objekti on luotu, voit viitata siihen koodissa käyttämällä määrittämääsi objektimuuttujaa. Seuraavassa esimerkissä käytät uuden objektin ominaisuuksia ja menetelmiä käyttämällä objektimuuttujaa ExcelSheet sekä muita Excel-objekteja, kuten Application-objekti ja Cells-kokoelma.

' Make Excel visible through the Application object.ExcelSheet.Application.Visible = True' Place some text in the first cell of the sheet.ExcelSheet.Application.Cells(1, 1).Value = "This is column A, row 1"' Save the sheet to C:\test.xls directory.ExcelSheet.SaveAs "C:\TEST.XLS"' Close Excel with the Quit method on the Application object.ExcelSheet.Application.Quit' Release the object variable.Set ExcelSheet = Nothing

Kun objektimuuttuja määritellään As Object-lauseella, ohjelma muodostaa muuttujan, joka voi sisältää viittauksen kaikkiin objektilajeihin. Kun objektia käytetään kyseisen muuttujan välityksellä, sidonta on suorituksenaikainen, eli sidonta tapahtuu, kun ohjelma suoritetaan. Jos haluat luoda objektimuuttujan, jota käytettäessä sidonta on käännöksenaikaista, eli sidonta tapahtuu ohjelman käännöksen aikana, esittele objektimuuttuja tietyllä luokkatunnuksella. Voit esimerkiksi määritellä ja luoda seuraavat Excel-viittaukset:

Dim xlApp As Excel.Application Dim xlBook As Excel.WorkbookDim xlSheet As Excel.WorkSheetSet xlApp = CreateObject("Excel.Application")Set xlBook = xlApp.Workbooks.AddSet xlSheet = xlBook.Worksheets(1)

Käännöksenaikaisen muuttujan avulla toteutettu viittaus voi toimia tehokkaammin, mutta se voi sisältää viittauksen vain määritys-vaiheessa määritettyyn luokkaan.

Voit välittää CreateObject-funktion palauttaman objektin funktioon, joka odottaa argumentiksi objektia. Esimerkiksi Excel.Application-objektin viittaus luodaan ja välitetään seuraavalla koodilla:

Call MySub (CreateObject("Excel.Application"))

Voit luoda objektin verkossa olevaan etätietokoneeseen välittämällä tietokoneen nimen CreateObject-funktion palvelinnimi-argumentille. Kyseinen nimi on sama kuin jaetun resurssin tietokonenimiosa; jos jaetun resurssin nimi on \\OmaPalvelin\Julkinen, palvelinnimi-argumentti on OmaPalvelin.

Huomautus:  Lisätietoja verkossa olevan etätietokoneen sovelluksen määrittämisestä näkyväksi on COM-ohjeissa (Microsoft Developer Network -sivustossa). Ohjeiden käyttäminen voi edellyttää, että lisäät sovellukselle rekisteriavaimen.

Seuraava koodi palauttaa etätietokoneessa MyServer suoritettavan Excel-esiintymän versionumeron:

Dim xlApp As ObjectSet xlApp = CreateObject("Excel.Application", "MyServer")Debug.Print xlApp.Version

Jos etäpalvelinta ei ole tai se ei ole käytettävissä, tapahtuu suorituksenaikainen virhe.

Huomautus:  Käytä CreateObject-funktiota, kun objektilla ei ole nykyistä esiintymää. Jos objektin esiintymä on jo käynnissä, uusi esiintymä käynnistetään ja määritetyn tyyppinen objekti luodaan. Jos haluat käyttää nykyistä esiintymää tai käynnistää sovelluksen ja määrittää sen lataamaan tiedoston, käytä GetObject-funktiota.

Jos objekti on rekisteröinyt itsensä yhden esiintymän objektiksi, objektin esiintymiä luodaan vain yksi huolimatta siitä, kuinka monta kertaa CreateObject-funktio suoritetaan.

Esimerkki

Tässä esimerkissä CreateObject-funktiota käytetään määrittämään viittaus (

xlApp

) Exceliin. Funktio käyttää viittauksen avulla Excelin Visible-ominaisuutta ja sulkee sen sitten Excelin Quit-menetelmällä. Lopuksi itse viittaus vapautetaan.

Dim xlApp As Object    ' Declare variable to hold the reference.Set xlApp = CreateObject("excel.application")    ' You may have to set Visible property to True    ' if you want to see the application.xlApp.Visible = True    ' Use xlApp to access Microsoft Excel's     ' other objects.xlApp.Quit    ' When you finish, use the Quit method to close Set xlApp = Nothing    ' the application, then release the reference.

Tarvitsetko lisäohjeita?

Haluatko lisää vaihtoehtoja?

Tutustu tilausetuihin, selaa harjoituskursseja, opi suojaamaan laitteesi ja paljon muuta.

Osallistumalla yhteisöihin voit kysyä kysymyksiä ja vastata niihin, antaa palautetta sekä kuulla lisää asiantuntijoilta, joilla on runsaasti tietoa.