Besturingselement

Status
Niet open voor verdere reacties.

gebruiker34

Gebruiker
Lid geworden
4 nov 2011
Berichten
38
Goedenavond,
Gaarne expertise. Ik heb op m'n formulier (popup) een knop "opslaan". De bedoeling is dat als ik in dat formulier een nieuwe record aanmaakt met daarin ook een datumveld, en een opzoekveld [frequentie] met gegevens zoals: ��nmalig, wekelijks, maandelijks etc etc, dat bij de knop opslaan, de record wordt opgeslagen en gekopieerd wordt naar een ander formulie (dat uit dezelfde velden bestaat) maar tegelijkertijd diezelfde record terug laat komen in dat formulier op genoemde data die ik dan heb aangeven met de keuzes in het opzoekveld (in het popupformulier). Dus datum 01-01-2012, 01-02-2012,
01-03-2012 etc.etc. genoemde datums was de keuze "maandelijks"in het opzoekveld
Weet iemand de oplossing?
Met vriendelijke groet,
Ton
 
Ik snap de vraag eerlijk gezegd niet; wat wil je precies? Als de gegevens zo gerelateerd zijn, lijkt het mij dat je een niet zo best genormaliseerde db hebt. Maar om bij een mogelijke oplossing te blijven: je kunt gegevens van een formulier 'meenemen' naar een ander formulier met de parameter OpenArgs. Dat is een specifiek type variabele dat je op het tweede formulier weer uitleest. Omdat jij meerdere velden wilt transporteren moet je een kleine truc toepassen om de velden op de juiste manier uit elkaar te houden. Die truc is: zet alle veldwaarden in die ene variabele, gescheiden door een scheidingsteken en haal de variabele op het tweede formulier weer uit elkaar. Dat ziet er op het eerste formulier zo uit:
Code:
    strArgs = Me.ClientID & "|" & Me.cboFrequentie.Value & "|" & CDbl(Me.txtDatum)
    DoCmd.OpenForm "Frm_Materials", , , , acFormAdd, , strArgs
En op het tweede formulier haal je de variabele weer uit elkaar:
Code:
Private Sub Form_Load()
    If Not Nz(Me.OpenArgs, "") = "" Then
        strArgs = Split(Me.OpenArgs, "|")
        On Error Resume Next
        Me.txtKlantID = CStr(strArgs(0))
        Me.txtFrequentie = strArgs(1)
        Me.txtDatum = CDate(strArgs(2))
    End If
End Sub
 
Hallo michel,
N.a.v. je antwoord heb ik de volgende vraag.
Hoe zit dat dan met die datum, wordt die dan automatisch in het tweede formulier elke eerste van de maand herhaaldelijk gekopieerd? Moet dan dan niet zoiets volgen als [datum] +30.
En m.b.t tot het invullen van die codes, moet daar een aparte knop(pen) van gemaakt worden
die direct reageren op on-click of na bijwerken. zeg het maar.
Ton
 
Automatisch records kopieëren is zowiezo niet mogelijk. Tenzij je heel ingewikkelde procedures gaat maken... Maar waarom zou je dat überhaupt willen?
 
Hallo Michel,
In antwoord op je bericht, betreur ik het dat je records niet kan kopiëren in een tabel. De vraag waarom ik dat überhaupt zou willen is volgens mij niet relevant. Om toch enig uitleg te geven met betrekking tot mijn vraag,
is het in theorie niet mogelijk om records die met regelmaat elke maand op dezelfde datum terugkomen, om die records met een simpele handeling te kopiëren. Als er veel records zijn gedurende de maand, dan lijkt het mij toch vervelend werk om met procedures zoals kopiëren en plakken te moeten werken. Maar ja je kan niet alles hebben.
Met vriendelijke groet,
Ton
 
De vraag waarom kan wel degelijk relevant zijn; misschien heb je een probleem dat op een heel andere manier opgelost kan worden dan met de oplossingsrichting die je zelf nodig denkt te hebben... Omdat we dat niet weten, kunnen we ook niet meedenken in de juiste oplossingsrichting. En alleen dus antwoorden op de concrete vragen die je stelt.
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan