Recordbrom RecordSource Tabelnaam veranderen

Status
Niet open voor verdere reacties.

Gerton64

Gebruiker
Lid geworden
8 sep 2006
Berichten
88
Zit te kijken maar kom er niet uit.

Ik heb een paar tabellen(8) en 1 forumlier .
Wat ik zou willen is dat op je formulier een keuzelijst of evt via knop de recordbron veranderd in een ander tabelnaam.

Via marco’s of VB !!!:(
 
Je kunt een keuzelijst maken met de namen van de tabellen, en een gebeurtenis <Na wijzigen> maken die vervolgens de gekozen tabelnaam als Recordsource toewijst aan het formulier: Me.Form.RecordSource = Me.cboTabel
En dan een Requery er achteraan om de gegevens te verversen.
 
Je kunt een keuzelijst maken met de namen van de tabellen, en een gebeurtenis <Na wijzigen> maken die vervolgens de gekozen tabelnaam als Recordsource toewijst aan het formulier: Me.Form.RecordSource = Me.cboTabel
En dan een Requery er achteraan om de gegevens te verversen.

Bedankt voor de snelle reactie.

Ben het aan het proberen maar is nog niet gelukt.
Ben niet helemaal op de hoogte in VB krijg nu nog een Compileerfout.

en de gebeurtnis "Na wijzigen"staat niet in me lijstje.
 
De gebeurtenis heet <Na bijwerken>. Dus niet Na wijzigen, zoals ik per abuis vermeldde. Logisch dus dat je die niet kon vinden. Verder zou het wel moeten werken. Waar krijg je de compileerfout?
 
Ik had alles geprobeerd met mij kennis van Access maar niet gelukt. :o

En een bijlagen gaat ook niet Mmmmm morgen maar weer verder.
 
Even wat ik gedaan hebt, 8 tabellen (plaatsnamen) en 1 formulier.

Ik heb een keuzenlijst met invoervak gebruikt met daar in de plaatsnamen.
In de eigenschappenvenster in “Na bijwerken” het volgende ingevuld.

Private Sub Keuzelijst met_invoervak_26AfterUpdate ()
Me.Form.RecordSource = Me.cboTabel
Requery
End Sub


Hier krijg ik dan een Compileerfout.

Verander in de Me.Form.RecordSource = Me.cboTabel naar Me.Form.RecordSource = “Baarn”

Dan word eerst tabel Amersfoort getoond en bij een selectie gaat hij naar Baarn. Maar dan kan ik niet meer terug.


NewBie :o
 
Kun je nog steeds geen voorbeeldje maken? Het gaat maar om een testje met daarin een paar tabellen die je wilt gebruiken en een formulier; er hoeven niet zoveel gegevens in te staan, en bij voorkeur ook geen afbeeldingen, want die maken de db vaak zo groot.
 
Ik heb een klein bestandje gemaakt,
wil eigenlijk de selectie via een query laten lopen.

Kan niet uploaden tot 100kb :evil:

nog een keer proberen!
 
Laatst bewerkt:
Eerst maar even een vraag: waarom maak je hier aparte tabellen voor? Ik zie op basis van de twee tabellen geen reden om dat niet in één tabel te doen.
 
Maar buiten die vraag:

Code:
Private Sub KeuzelijstPlaats_AfterUpdate()
    Me.Form.RecordSource = Me.KeuzelijstPlaats.Value
    Me.Form.Requery
End Sub

Zo werkt-ie. Eigenlijk zoals ik al aangaf ;)
 
Dat kan ik je vertellen. je ben wel heel snel met reacties en valt me op dat je overal een antwoord op weet, reageren anderen niet of kijken die alleen maar mee.

De tabellen zijn idd het zelfde allen komen de gegevens uit anderen gemeentes (plaats).

En na verwerking gaat dit weer terug, lang verhaal maar wil dat best toelichten. In kort bereikbaarheids kaarten brandweer – adressen in database – daarna xml bestand genereren voor een navigatiesysteem.
 
De grap van een goede database is dat je de gegevens zo simpel mogelijk, en zo consistent mogelijk opslaat. In jouw geval zijn alle gegevensbronnen in wezen gelijk; het onderwerp is steeds hetzelfde, en de basisgegevens die je opslaat zijn dat ook. Op basis daarvan die je alles eigenlijk in één tabel op te slaan. Stel dat je 80 verschillende gemeentes hebt, en er moet een extra veldje bijkomen. Da's een behoorlijke klus. Met één tabel is het onderhoud een stuk simpeler, en het draaien van exportgegevens, overzichten etc is met een tabel ook echt een stuk makkelijker.
Ik snap wel dat je op basis van één gemeente wilt kunnen werken/exporteren, maar dat doe je door een filter op de tabel te zetten voordat je het formulier opent. Dat kan bijvoorbeeld vanuit een hoofdformulier, waar je eerst een gemeente kiest, en daarna in een gefilterd formulier verder werkt.

Ik ben inderdaad wel snel met reageren, maar als je een antwoord weet, waarom zou je dan wachten? Bovendien, als ik wel wacht, gebeurt er vaak ook niks. Maar ik wil best wachten ;)
 
Maar buiten die vraag:

Code:
Private Sub KeuzelijstPlaats_AfterUpdate()
    Me.Form.RecordSource = Me.KeuzelijstPlaats.Value
    Me.Form.Requery
End Sub

Zo werkt-ie. Eigenlijk zoals ik al aangaf ;)


Michel JIJ BEN GEWELDIG kan je wel kussen.:d

Eentje nog !! Kan je dit ook via een Query doen.?? dus ipv een tabel een query waar ik nog wat selecties aan en uit kan zetten.
 
Het maakt voor een formulier niet uit of je een query als basis gebruikt, of een tabel. Maar denk dan nog eens aan het vorige antwoord (ze lopen een beetje langs elkaar heen...).
Als je alles in één tabel zet, kun je op een hoofdformulier de preselectie maken, en daar het formulier op baseren. Easy peasy!
 
De grap ......

Ik ben inderdaad wel snel met reageren, maar als je een antwoord weet, waarom zou je dan wachten? Bovendien, als ik wel wacht, gebeurt er vaak ook niks. Maar ik wil best wachten ;)

Idd wachten is niets, was iedereen maar zo snel. het is ook zo je ben ergens mee bezig en je wil het liefst zo snel afmaken en nog belangrijker dat het werkt ook!!!! :d.

Ik heb 9 tabellen meer komen er niet bij en aan recorts zit bv in Amersfoort op een 350 stuks.
 
't Is natuurlijk jouw db, maar hou mijn opmerkingen in ieder geval in het achterhoofd; uiteindelijk zul je er jezelf bergen tijd mee besparen als je ze toepast. En een beter genormaliseerde database...
 
Michel

Nog bedankt, werkt super. had er nog over nagedacht om de plaatsen bij elkaar te zetten maar dan loop ik tegen een probleem om de data te versturen naar de Navigatie.

Tussen de database en de Nav zit een programmatje waar ik aangeeft waar het object ligt (X,Y) en naam bedrijf en een koppeling naar een pdf bestand. Ik kan dan niet op een plaats selecteren dus dan krijg ik alle gegevens en PDF's van elke plaats.
En dan zit de computer snel vol met de PDFjes.

Wil het best eens telefonisch uitleggen.
 
NEW !!! vraag.

Ik had een stukje script in mijn bestand gezet, als je op een regel staat waar amersfoort in staat, dat je dan de map opend met de juiste PDF bestand. dit werkt goed alleen voor Amersfoort.
Wat ik zou willen is als er een ander plaatsnaam in een regel staat (die je selecteerd) , dat dan die map word geopend. bv. leusden ipv van Amersfoort.

Private Sub Knop194_Click()
On Error GoTo Err_Knop194_Click
Dim Map As String

Map = Me!ONR
FollowHyperlink ("R:\x1\x2\x3\Amersfoort\" & Map), , True, False

Exit_Knop194_Click:
Exit Sub

Err_Knop194_Click:
MsgBox ("De map die u wilt openen bestaat niet!")
Resume Exit_Knop194_Click

End Sub
 
Laatst bewerkt:
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan