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

Bemærk!: Funktionen, metoden, objektet eller egenskaben, der er beskrevet i dette emne, deaktiveres, hvis Microsoft Jet Expression Service kører i sandkassetilstand, hvilket forhindrer evalueringen af potentielt usikre udtryk. Søg efter "sandkassetilstand" i Hjælp, hvis du vil have mere at vide om sandkassetilstand.

Opretter og returnerer en reference til et ActiveX-objekt.

Syntaks

CreateObject ( klasse [, servernavn] )

Syntaksen for funktionen CreateObject har disse argumenter:

Argument

Beskrivelse

klasse

Obligatorisk. Variant (Streng). Programnavnet og klasse af det objekt, der skal oprettes.

servernavn

Valgfrit. Variant (Streng). Navnet på den netværksserver, hvor objektet oprettes. Hvis servernavn er en tom streng (""), bruges den lokale computer.

Klasse argument anvender syntaksen appnavn.objekttype og indeholder følgende dele:

Del

Beskrivelse

appnavn

Obligatorisk. Variant (Streng). Navnet på det program, der leverer objektet.

objekttype

Obligatorisk. Variant (Streng). Den type eller klasse af objekt, der skal oprettes.

Bemærkninger

Hvert program, der understøtter automatisering, indeholder mindst én type objekt. Eksempelvis kan et program til tekstbehandling levere et program-objekt, et dokument-objekt og et værktøjslinje-objekt.

Hvis du vil oprette et ActiveX-objekt, skal du tildele det objekt, der returneres af CreateObject, til en objektvariabel:

Bemærk!: Følgende eksempler demonstrerer brugen af denne funktion i et VBA-modul (Visual Basic for Applications). Hvis du vil have mere at vide om at arbejde med VBA, skal du vælge Udviklerreference på rullelisten ud for Søg og skrive ét eller flere ord i søgefeltet.

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

I dette eksempel automatiserer vi et Excel-regnearksobjekt fra en Access-database. Denne kode starter programmet, der opretter objektet, i dette tilfælde et Microsoft Excel-regneark. Når et objekt er oprettet, skal du referere til det i kode ved hjælp af den objektvariabel, du har defineret. I følgende eksempel får du adgang til det nye objekts egenskaber og metoder ved hjælp af objektvariablen, ExcelSheetog andre Excel-objekter, herunder Application -objektet og Cells -samlingen.

' 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

Når du erklærer en objektvariabel med delsætningen As Object , oprettes der en variabel, der kan indeholde en reference til en hvilken som helst type objekt. Adgangen til objektet via den pågældende variabel er dog sen bundet. Det vil altså være, at bindingen sker, når programmet køres. Hvis du vil oprette en objektvariabel, der resulterer i tidlig binding, dvs. binding, når programmet kompileres, skal du erklære objektvariablen med et bestemt klasse-id. Du kan f.eks. erklære og oprette følgende Excel-referencer:

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)

Referencen gennem en tidligt bundet variabel kan give bedre ydeevne, men kan kun indeholde en reference til det klasse, der er angivet i erklæring.

Du kan videregive et objekt, der returneres af funktionen CreateObject, til en funktion, der forventer et objekt som argument. Eksempelvis opretter og videregiver følgende kode en reference til et Excel.Application-objekt:

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

Du kan oprette et objekt på en fjerncomputer på netværket ved at videregive navnet på computeren til argumentet servernavn for CreateObject. Dette navn er det samme som Computernavn-delen af et sharenavn: for et share med navnet "\\MyServer\Public" er servernavn "MyServer".

Bemærk!:  Se COM-dokumentationen (se Microsoft Developer Network) for at få mere at vide om at gøre et program synligt på en fjerncomputer i et netværk. Du skal muligvis tilføje en registreringsdatabasenøgle i dit program.

Den følgende kode returnerer versionsnummeret af en forekomst af Excel, der kører på en fjerncomputer med navnet MyServer:

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

Hvis fjernserveren ikke findes eller ikke er tilgængelig, opstår der en kørselsfejl.

Bemærk!:  Brug CreateObject, når der ikke er nogen aktuel forekomst af objektet. Hvis der allerede kører en forekomst af objektet, startes der en ny forekomst, og der oprettes et objekt af den angivne type. Brug funktionen GetObject for at bruge den aktuelle forekomst eller for at starte programmet og få det til at indlæse en fil.

Hvis et objekt har registreret sig som et enkelt-forekomst-objekt, oprettes der kun én forekomst af objektet, uanset hvor mange gange CreateObject køres.

Eksempel

I dette eksempel bruges funktionen CreateObject til at angive en reference (

xlApp

) til Excel. Referencen bruges til at få adgang til Excel-egenskaben Synlig og bruger derefter Excel-metoden Afslut til at lukke den. Til sidst frigives selve referencen.

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.

Har du brug for mere hjælp?

Vil du have flere indstillinger?

Udforsk abonnementsfordele, gennemse kurser, få mere at vide om, hvordan du sikrer din enhed og meget mere.

Communities hjælper dig med at stille og besvare spørgsmål, give feedback og høre fra eksperter med omfattende viden.