Op deze website gebruiken we cookies om content en advertenties te personaliseren, om functies voor social media te bieden en om ons websiteverkeer te analyseren. Ook delen we informatie over uw gebruik van onze site met onze partners voor social media, adverteren en analyse. Deze partners kunnen deze gegevens combineren met andere informatie die u aan ze heeft verstrekt of die ze hebben verzameld op basis van uw gebruik van hun services. Meer informatie.

Akkoord

Vraag & Antwoord

Programmeren

Access - tabel referentie bij gesplitste database

MaartenW
12 antwoorden
  • Ik heb een bestaande database gesplitst, zodat de tabellen in een andere file staan dan de access-file met de queries en modules. De locatie van de tabellen-file wordt zichtbaar als de cursor boven de tabel-referentie staat.
    Met 'koppelingsbeheer' kan ik handmatig naar een andere file verwijzen.

    Hoe kan ik dat in VBA programmeren?

    Groeten, Maarten.
  • Geef het pad aan.
  • Wiep, bedankt voor je belangstelling.
    Maar je antwoord helpt me nog niet.

    Welke zin zoals bv. GekoppeldeTabel.path of iets dergelijks moet ik gebruiken. Ik kan dus niet vinden waar ik het pad naar toe moet schrijven.
  • www.connectionstrings.com

    Daar zie je de connectie met de database.

    Vervolgens heb je een select statement nodig om gegevens uit de tabel te lezen.
  • Wiep, nogmaals bedankt voor je interesse, maar je antwoord is nog niet wat ik bedoel.

    Ik heb de database gesplitst, omdat een tabel als gevolg van het alsmaar toevoegen van gegevens sterk groeit. Het doel is nu om op regelmatige tijden een nieuwe tabel te maken, de oude tabellen in afzonderlijke files te bewaren. De oude files moeten wel beschikbaar blijven om oude gegevens terug te zoeken. Dat wil ik mogelijk maken door de verwijzing naar de gekoppelde tabel om te zetten.
    De verwijzing kan met de hand door 'Koppelingsbeheer', maar ik wil dat vanuit VBA mogelijk maken.
    Dus: hoe gebruik ik 'Koppelingsbeheer' in VBA?

    Groet, Maarten.
  • Nou, dan zal het mij niet duidelijk zijn, maar ik lees in je vraag: je hebt een tabel A. Die tabel (max grootte is 2 gig) komt op een bepaald moment aan zijn max.

    Dan wil je een nieuwe tabel, laten we zeggen tabel B gebruiken en de tabel A wordt archief.

    Als je het zo bedoelt moet je dus gewoon de letter A in B veranderen, en dat kan dus heel eenvoudig, maar je moet wel VB(A) beheersen.

    Wat heb je tot nu toe dan geprobeerd?
  • Ik heb me 'te pletter' gezocht naar iets in VBA wat met koppelingsbeheer samenhangt, maar niets gevonden.

    Wat ik met de hand kan (met koppelingsbeheer een verwijzing maken naar een andere file met de gewenste gegevens) wil ik in VBA uitvoeren.

    De tabel waar ik het over heb is weliswaar nog lang niet 2GB, maar op regelmatige tijden (bv. elk jaar) wil ik een nieuwe tabel aanmaken. De oude file moet beschikbaar blijven om data te leveren.
  • En ik kan me niet voorstellen wat VB(A) met koppelingsbeheer te maken heeft.

    VB(A) is een programmeertaal.
  • Koppelingsbeheer is een actie die je in Access kunt uitvoeren om een verbinding met tabellen in een externe Access-DB te maken.
    VBA is een 'programmeertaal' die je kan helpen om handmatige acties te automatiseren. Zo wil ik dus de handmatige actie om een verbinding met een (andere) file-met-tabel te maken met VBA automatiseren.
  • Goed, moet je luisteren eh..lezen.

    Wanneer je een frontend en een backend aanmaakt in Access dan maak je dus twee databases. De ene bevat de formulieren en de de queries en de andere de tabellen.

    Met koppelingsbeheer importeer of koppel je de tabellen. Importeren is onzin natuurlijk want dan hef je de actie 'database splitsen' weer op.

    Je wilt tabellen kloppelen. Wat dat koppelingsbeheer doet is een stukje code schrijven die de ConnectieString (welke database moet gebruikt worden) en de Select statement(Select * From Archief) aanmaakt.

    Deze code kun je ook zelf (met VBA) schrijven, maar dan moet je wel de taal VB(A) beheersen.

    Ik heb je aangegeven waar je een voorbeeld kunt vinden hoe een ConnectieString eruit ziet.

    Dus stel nu een dat je frontend A heet en backend B heet.
    Dan maak je in A een formulier waar je in een tekstbox bijvoorbeeld de ConnecieString kunt invoeren of lees je een tabel uit waar die al instaat en druk je vervolgens op een button om die waarden door te geven aan je code.

    Maar ik heb het idee dat je nog niet hebt geprogrammeerd in VB(A), of misschien wel maar geen idee hebt hoe je een Connectie met een database moet programmeren.
  • Wiep, bedankt voor je antwoord. Het lijkt licht te worden aan de horizon.
    Het probleem is niet mijn gebrek aan VBA ervaring (verschrikkeljk, maar je leert ermee leven…), maar mijn kennis/ervaring met gesplitste DB's.

    Ik ga proberen je laatste antwoord zo te gebruiken dat mijn doel bereikt wordt. Je hoort wanneer me dat gelukt is.
  • http://www.mvps.org/access/tables/tbl0009.htm

    Met de code die je te zien krijgt als je op bovenstaande link klikt kun je gelinkte tabellen relinken naar bijvoorbeeld een andere db. Wellicht heb je daar iets aan.


    Grtz,

Beantwoord deze vraag

Dit is een gearchiveerde pagina. Antwoorden is niet meer mogelijk.