Avatar billede 2dbornot2db Nybegynder
12. marts 2005 - 11:45 Der er 11 kommentarer og
2 løsninger

Reference til powerpoint 2000

Jeg skal eksportere nogle data fra Access til Powerpoint. Derved har jeg behov for en reference til powerpoint i min VBA. Mit problem er at jeg sidder på Office 2003 og skal udvikle dette til office 2000 - jeg mangler derfor Major og Minor til kommandoen .AddFromGuid.

Er der nogen der sidder på en office 2000 og har mulighed for at tjekke hvad de er? Eller endnu bedre har et link til en side med overblik over alle referencerne?
Avatar billede kjulius Novice
12. marts 2005 - 14:07 #2
Den metode du skal bruge er fra Access 2000, ser jeg nu.

http://msdn.microsoft.com/library/default.asp?url=/library/en-us/off2000/html/acdecWhatsNewForDevelopersLanguage.asp var måske et bedre sted at starte...
Avatar billede kjulius Novice
12. marts 2005 - 14:15 #3
Avatar billede 2dbornot2db Nybegynder
12. marts 2005 - 14:20 #4
Metoden kender jeg godt. Jeg leder efter parametrene Major og Minor.
Eksempelvis er de for Excel i 2000 hhv. 2003: 1,3 og 1,5
Avatar billede terry Ekspert
12. marts 2005 - 15:34 #5
Never worked with PowerPoint from Access but can you not make a reference to PowerPoint in Tools References as normal. This allows you to working with PowerPoint using easly binding. Then when you are finished developing you change yo can aloetr the code slightly so that you no longe need a reference to PowerPoint so the version insatlled will be used.

EXAMPLE:
'Early binding. A Reference to PowerPoint is needed
Dim pptApp As PowerPoint.Application
Set pptApp = New PowerPoint.Application

'Late binding. No Reference needed
Dim pptApp As Object
Set pptApp = CreateObject(PowerPoint.Application)


Ot maybe I'm missing something?
Avatar billede terry Ekspert
12. marts 2005 - 15:34 #6
using easly binding = using early binding
Avatar billede terry Ekspert
17. marts 2005 - 19:38 #7
status?
Avatar billede 2dbornot2db Nybegynder
20. marts 2005 - 14:43 #8
-> Terry
Tak for tippet. Det ændrer dog ikke ved at jeg skal bruge en reference til powerpoint når jeg afvikler hos brugerne - eller har jeg misforstået en genistreg fra dig?

Jeg sidder og udvikler i 2003. Når applikationen er klar fjerner jeg referencer til bl.a. Outlook og Office Objects. Som en del af autoexec kører jeg følgende kode:

Public Function StartRef()

On Error Resume Next

Application.References.AddFromGuid "{00062FFF-0000-0000-C000-000000000046}", 9, 0 'Outlook
Application.References.AddFromGuid "{2DF8D04C-5BFA-101B-BDE5-00AA0044DE52}", 2, 1 'Office


End Function

Det kan jeg fordi jeg på en maskine, der har installeret Office 2000 har testet de to sidste tal ved at sætte reference og køre følgende sub:

Private Sub TESTref()

Dim ref As Reference

Set ref = Application.References("powerpoint") 'Eller Outlook eller...
Debug.Print ref.Guid & ", " & ref.Major & ", " & ref.Minor

End Sub

Jeg er bare ikke i nærheden af en maskine med office 2000, derfor mit spørgsmål her.

For Office 2003 ser det således ud for powerpoint:
{91493440-5A91-11CF-8700-00AA0060263B}, 2, 8
Avatar billede terry Ekspert
20. marts 2005 - 16:18 #9
If PowerPoint is installed and registered correctly in the registry then there should be no need to set a reference in the Access database.
This then allows you to install your database on a PC with any version (also older) of PowerPoint than the one you used in development.
I have not done this with PowerPoint but with other Office applications (Word, Excel etc.) and it does work. So it should also work with PowerPoint.
Avatar billede terry Ekspert
20. marts 2005 - 16:18 #10
I thik you should try it :o)
Avatar billede kjulius Novice
20. marts 2005 - 16:54 #11
Jeg sidder også på en Office 2003 maskine, så jeg kan heller ikke hjælpe dig. Men måske var det på sin plads at beskrive en metode til at finde dine oplysninger. Så vidt jeg kan udrede, vil en af metoderne være følgende:

På en maskine med Office 2000:

1) Start Regedit
2) Gå til HKEY_CLASSES_ROOT\TypeLib
3) Søg efter "Powerpoint"
4) Du skulle nu gerne være placeret i en mappe, som indeholder en nøgle med en tekst som "Microsoft Powerpoint xx.0 Object Library".
5) Navnet på mappen du står i er det versionsnavn der efterlyses, og TypeLib navnet er navnet på mappen lige ovenfor.

Måske er der andre og bedre metoder til at finde oplysningerne, men den her virker i hvert fald.

Yderligere Office 2003 programmer:

Excel:
{00020813-0000-0000-C000-000000000046}, 1.5

Word:
{00020905-0000-0000-C000-000000000046}, 8.3

Outlook:
{00062FFF-0000-0000-C000-000000000046}, 9.2

Publisher:
{0002123C-0000-0000-C000-000000000046}, 2.0

Infopath:
{FD34A350-115F-43CA-8D6F-BBD45FD6F828}, 1.0


Som sagt, ovenstående er Office 2003 programmer, så du har stadig brug for input fra experter med Office 2000 installeret, men måske vil det falde disse lidt nemmere at finde oplysningerne vha. ovenstående metode?

Eller du kender måske selv en bedre metode? - så lad høre...

Held og lykke...
Avatar billede 2dbornot2db Nybegynder
22. marts 2005 - 17:49 #12
-> kjulius.
Jeg kender ikke andre metoder. Jeg kendte ikke engang RegEdit-metoden :-)

-> Terry
Jeg kan ikke få det til at virke med din metode. Den genkender ikke objekterne.

Tak for indsatsen begge. Jeg tror sporet er dødt og jeg lukker spørgsmålet.
Avatar billede terry Ekspert
22. marts 2005 - 18:20 #13
Sorry to hear you cant get it to work, I'm very sure it should.

Thanks
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Dyk ned i databasernes verden på et af vores praksisnære Access-kurser

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester