Help!

PC-Problemen?
De vrijwilligers van Oplossing.be zoeken gratis met u mee!

Hulp bij posten

Recente topics

Auteur Topic: Variabele overzetten van formulier naar formulier  (gelezen 6011 keer)

0 leden en 1 gast bekijken dit topic.

Offline koenw

  • Nieuw lid
  • Berichten: 2
  • Oplossing.be
Variabele overzetten van formulier naar formulier
« Gepost op: 26 november 2006, 21:03:17 »
Hey iedereen

Ik zit met een probleem.  We hebben een opdracht gekregen voor een klantenbeheer systeem aan te maken in Access, gebruikmakende van formulieren.

M'n probleem is nu echter, dat ik graag de waarde van een bepaald veld in een formulier (bv de waarde van KlantNr in het formulier Klant) in een variabele wil steken en deze overbrengen bij het openen van een ander formulier.

Ik heb al enkele mogelijkheden geprobeerd, maar zonder resultaat. De waarde dat in de variabele wordt gestoken kan niet worden opgevraagd in het tweede formulier  ???

Iemand een oplossing hiervoor?

Bedankt op voorhand
Koen
Gelieve uw systeemgegevens in te vullen. Klik HIER voor meer informatie.

Offline dizzl

  • Ambassadeur
  • *****
  • Berichten: 2.345
  • I've Upped my standards,now,up yours!
Re:Variabele overzetten van formulier naar formulier
« Reactie #1 Gepost op: 27 november 2006, 10:26:31 »
rar of zip je bestand en toon al eens wat je hebt?  

normaal gebruik je zoiets als
Forms!formulier2.Veld.text = Forms!formulier1.Veld.text
Systeem  : Intel Core i5-4440 3.1Ghz, 3.1GHz 16Giga Ram 64Bits
Software : Windows 10 professional, Avira, Office 2016 Professional

Offline Straandjanet

  • Volledig lid
  • **
  • Berichten: 101
  • Oplossing.be
Re:Variabele overzetten van formulier naar formulier
« Reactie #2 Gepost op: 27 november 2006, 19:41:19 »
Zou het kunnen dat je in de knoei komt doordat je werkt met een variabele en je die variabele declareert op niveau van het formulier?

In mensentaal: als je de waarde van het ene formulier wil doorgeven naar het andere, moet je in principe niet via een variabele werken (als alletwee de formulieren geopend zijn), maar het kan wel.

Dan moet je er wel aan denken dat elke variabele maar tot op een bepaalde hoogte is gekend door Access. Als je niet goed oplet is een variabele alleen maar gekend binnen formulier A. Als je dan die variabele wil toewijzen aan een element binnen formulier B, dan zal Access niet weten wat je bedoelt.

Sleutel is de manier waarop je declareert. Ik denk dat je met een declaratie "Public" al een heel eind komt. Tik in de help-sectie van Access Visual Basic ook eens "variabelen declareren" of "public instructie" in.
Windows 7 Home Premium
AMD Phenom(tm) II X4 805 Processor 800
RS780HVF
ATI Radeon HD 4650 1024MB 1920 x 1080
High Definition Audio-apparaat
Norton AV

Offline dizzl

  • Ambassadeur
  • *****
  • Berichten: 2.345
  • I've Upped my standards,now,up yours!
Re:Variabele overzetten van formulier naar formulier
« Reactie #3 Gepost op: 28 november 2006, 07:43:24 »
Jammer dat koenw niet meer reageerde.
In bijlage een simpel vb

wel raar dat je zonder setfocus wel kan
forms!TweedeForm.veldNaam = forms!EersteForm.veldNaam


zet je
forms!TweedeForm.veldNaam.Text danheb je 'wel' SetFocus nodig
Systeem  : Intel Core i5-4440 3.1Ghz, 3.1GHz 16Giga Ram 64Bits
Software : Windows 10 professional, Avira, Office 2016 Professional

Offline Straandjanet

  • Volledig lid
  • **
  • Berichten: 101
  • Oplossing.be
Re:Variabele overzetten van formulier naar formulier
« Reactie #4 Gepost op: 28 november 2006, 13:17:12 »
wel raar dat je zonder setfocus wel kan
forms!TweedeForm.veldNaam = forms!EersteForm.veldNaam

zet je
forms!TweedeForm.veldNaam.Text danheb je 'wel' SetFocus nodig

Niet zo raar, denk ik. De standaardeigenschap van een tekstveld is immers ".value". Die kan je ten allen tijde oproepen, zonder de focus er op te zetten. Zoals je dus in de eerste regel doet.

De eigenschap ".text" wordt eerder gebruikt om de waarde van een tekstveld te lezen als je die waarde van dat tekstveld aan het wijzigen bent (als je er echt iets in het typen bent). In die zin is het dan ook normaal dat het tekstveld op dat moment de focus moet hebben.

Maar dit eigenlijk maar terzijde.
Bottom-line: het probleem van koenw is opgelost, denk ik... Nu nog dat vinkje...
Windows 7 Home Premium
AMD Phenom(tm) II X4 805 Processor 800
RS780HVF
ATI Radeon HD 4650 1024MB 1920 x 1080
High Definition Audio-apparaat
Norton AV

Offline koenw

  • Nieuw lid
  • Berichten: 2
  • Oplossing.be
Re:Variabele overzetten van formulier naar formulier
« Reactie #5 Gepost op: 29 november 2006, 00:50:53 »

forms!TweedeForm.veldNaam = forms!EersteForm.veldNaam

Mijn excuses voor de late reply, maar het is inderdaad opgelost geraakt.

De methode die ik gebruikt heb, is nl. die van dizzl (bedankt hiervoor).

Het enige nadeel is wel dat de beide formulieren actief moeten zijn als je de waarden wil opvragen (wat wel vrij logisch is). Hier kan je desnoods wel een mouw aan passen, dat bij het openen van het tweede formulier, het eerste vergrendeld wordt (om errors te voorkomen).

Oh en zoals Straandjanet het al zei, de code in de aard van: “forms!TweedeForm.veldNaam = forms!EersteForm.veldNaam”  volstaat. Heb geen .SetFocus meer nodig gehad.


Sleutel is de manier waarop je declareert. Ik denk dat je met een declaratie "Public" al een heel eind komt. Tik in de help-sectie van Access Visual Basic ook eens "variabelen declareren" of "public instructie" in.

Heb alles wat geprobeerd maar kwam tot geen deftig resultaat.

De methode die de waarde direct gaat opvragen uit het andere formulier (zie bovenste quote) werkt tot nu toe perfect (je moet er natuurlijk wel voor zorgen dat de gebruiker de waarden in het besturingsformulier niet zomaar kan veranderen, als je de waarden nog moet ophalen/gebruiken in het tweede formulier)

Bedankt voor alle hulp
Koen Wellekens
Gelieve uw systeemgegevens in te vullen. Klik HIER voor meer informatie.

 


www.combell.com