pad naar Access

Status
Niet open voor verdere reacties.

Labordus

Gebruiker
Lid geworden
1 nov 2017
Berichten
13
Ongetwijfeld een beginnersvraag en desondanks kan ik het antwoord niet vinden in FAQ.
Hoe lees ik de bestandslocatie van Access in? Van mijn project kan het met CurrentProject. Maar voor Access kan ik het niet vinden (of bedenken). Het zou toch een eigenschap van Application moeten zijn?
 
Het is geen Application eigenschap.
Je kan deze register sleutel uitlezen:
Code:
"HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\App Paths\MSACCESS.EXE\Path"
 
Laatst bewerkt:
Met 'bestandslocatie' bedoel je neem ik aan het pad waar de actieve database staat. Als dat zo is: dat antwoord heb je zelf al gegeven. Dat kan alleen met CurrentProject.Path.
 
Nee, ik bedoel de plaats, waar Excel.exe staat.
Het eerder gegeven antwoord helpt me uit de problemen, hoewel ik nog niet begrijp dat er geen Application-eigenschap of zo zou zijn, die ook die informatie bevat. Maar ik kan hem niet vinden; dus het zal wel niet.
In elk geval: bedankt voor de tips.
 
Waarom zou je die info ook nodig hebben? Je kunt altijd een instantie van Excel openen zonder dat je hoeft te weten waar die staat. Overigens ging het in je vraag over Access, niet over Excel.
 
Daarnaast heeft Excel wel Application.Path.
 
Maar daar heeft TS niets aan, want dan heeft-ie al vanuit Access een Excel sessie opgestart. Dus wat heeft het dan voor zin om nog naar de bekende weg te vragen?
 
Geen idee. Dat laten we maar even aan TS.
Heeft Access niet een aparte runtime executable?
Misschien dat hij dat bedoelt.
 
Inderdaad was dat een beetje slordig: de ene keer Access, de andere keer Excel. Dat komt omdat ik mijn project wat heen en weer pendel tussen beiden. En ik wist gewoon niet, dat je in de aanroep geen padverwijzing hoeft op te geven. En ik had al gezien dat Excel die eigenschap wel heeft, maar in Access kon ik die niet vinden. Maar in die zin was mijn vraag dus min of meer overbodig. Waarvoor verontschuldiging.
Wie of wat is overigens TS?
 
TS - Topic Starter
Jij dus :)
 
Dus als ik het goed heb, is bij deze de vraag beantwoord? Je wilt dus inderdaad alleen weten hoe je vanuit de ene applicatie de ander opstart? Als dat zo is, dan kun je van twee technieken gebruik maken: Late Binding en Early Binding. Het voordeel van de tweede is: je kunt IntelliSense gebruiken, en het is sneller. Het voordeel van het eerste is: je bent versie-onafhankelijk. Het werkt dus altijd. Welke variant je kiest, hangt dus af van hoe je bestanden gebruikt worden. Als verschillende gebruikers met verschillende Office versies met dezelfde database/Excel bestanden moeten werken, is Late Binding de juiste keus. Werkt iedereen met dezelfde Office, dan kun je Early Binding overwegen. In ieder geval om e.e.a. te ontwikkelen; daarna kun je er altijd nog Late Binding van maken.
 
Als je een snelkoppeling gebruikt om je database mee op te startten kan je ook overwegen om in die snelkoppeling een directe verwijzing naar de exe die je gebruikt te leggen, zo vermijd je problemen bij het gedeeld opstartten van de database door een tweede gebruiker over een netwerk.
 
Status
Niet open voor verdere reacties.
Steun Ons

Nieuwste berichten

Terug
Bovenaan Onderaan