Toon posts:

[Access 2003] Lege velden bij openen formulier

Pagina: 1
Acties:
  • 353 views sinds 30-01-2008
  • Reageer

Verwijderd

Topicstarter
Ik heb het volgende probleem:
Bij het openen van een zelf-gemaakt formulier krijg ik automatisch het eerste record te zien in de velden. Het is juist de bedoeling dat alle velden leeg zijn en wanneer er een waarde geselecteerd wordt in een dropdown menu de resultaten in die velden weergegeven worden. Het eerste record leeglaten is misschien een optie, maar dit wordt niet goedgekeurd door degene waar ik het voor moet maken.
Google geeft me geen (goed) antwoord en op dit forum is de enige topic die me enigszins helpt deze:
Lege velden in Access form
Het enige probleem is dat de oplossing die door de topicstarter gevonden wordt, niet gepost is...
Nu heb ik hetzelfde probleem...

  • Witte
  • Registratie: Februari 2000
  • Laatst online: 29-01 15:02
Wat is het probleem om het eerste record te tonen?
Als je je drop-down list in de formulier-koptekst plaatst, gaat het toch prima?

Wat je ook kan doen, is een subformpje maken met daarin je gegevens, en dan koppelen met het hoofdformulier op basis van wat je in je dropdownlist kiest.
Niks gekozen, geen koppeling, geen info.

Houdoe


  • BtM909
  • Registratie: Juni 2000
  • Niet online

BtM909

Watch out Guys...

Wil je de velden gewoon leeg hebben, of dusdanig leeg dat je een nieuw record toe kan voegen?

Ace of Base vs Charli XCX - All That She Boom Claps (RMT) | Clean Bandit vs Galantis - I'd Rather Be You (RMT)
You've moved up on my notch-list. You have 1 notch
I have a black belt in Kung Flu.


  • TeasingU
  • Registratie: Juni 2001
  • Laatst online: 15-09-2022

TeasingU

I Live Longer

Gewoon velden leeg maken kan bij het even Form_Open()
Dan geef je per veld het volgende aan:

Me.txtveldnaam.value = ""

txtveldnaam is hier dan de naam van het tekstvak.

Hier nog een handig linkje met meer over Access formulieren

http://home.planet.nl/~di...ess/formulier_rapport.htm

[ Voor 31% gewijzigd door TeasingU op 19-01-2005 14:32 . Reden: Nog een link erbij ]

cd /usr/ports/www/porn make install


  • BtM909
  • Registratie: Juni 2000
  • Niet online

BtM909

Watch out Guys...

TeasingU schreef op woensdag 19 januari 2005 @ 14:30:
Gewoon velden leeg maken kan bij het even Form_Open()
Dan geef je per veld het volgende aan:

Me.txtveldnaam.value = ""
wat denk je dat er met dat viewing-record gebeurt als je gaat navigeren :? ;)

Ace of Base vs Charli XCX - All That She Boom Claps (RMT) | Clean Bandit vs Galantis - I'd Rather Be You (RMT)
You've moved up on my notch-list. You have 1 notch
I have a black belt in Kung Flu.


Verwijderd

Topicstarter
Sterker nog: hij geeft de hele VB-regel als fout aan...
Een van de velden heet bijvoorbeeld CPU...
Ik voer dus de volgende code in als VB-code:

Private Sub Form_Open(Cancel As Integer)
Me.CPU.Value = ""
End Sub

Vervolgens krijg ik dus de melding:

Fout 2448 tijdens uitvoering:
U kunt geen waarde aan dit object toekennen.

Waarschijnlijk komt dit doordat er een waarde in het eerste record staat...
Daarnaast wil ik er nog even bijzeggen dat bepaalde velden in een record geen NULL-waarde kan/mag hebben. Alle velden moeten dan ook ingevuld worden door de persoon die het formulier gaat gebruiken (dit om te voorkomen dat er geen halve records in de db komen)

EDIT: misschien een idee om de velden die pas naar voren moeten komen als er iets geselecteerd wordt in de dropdown te disabelen... dus standaard uitgeschakeld en als er een waarde bestaat in de dropdown, alle velden weer inschakelen...

[ Voor 20% gewijzigd door Verwijderd op 19-01-2005 15:03 ]


Verwijderd

Verwijderd schreef op woensdag 19 januari 2005 @ 14:55:
Sterker nog: hij geeft de hele VB-regel als fout aan...
Een van de velden heet bijvoorbeeld CPU...
Ik voer dus de volgende code in als VB-code:

Private Sub Form_Open(Cancel As Integer)
Me.CPU.Value = ""
End Sub

Vervolgens krijg ik dus de melding:

Fout 2448 tijdens uitvoering:
U kunt geen waarde aan dit object toekennen.

Waarschijnlijk komt dit doordat er een waarde in het eerste record staat...
Daarnaast wil ik er nog even bijzeggen dat bepaalde velden in een record geen NULL-waarde kan/mag hebben. Alle velden moeten dan ook ingevuld worden door de persoon die het formulier gaat gebruiken (dit om te voorkomen dat er geen halve records in de db komen)
Ja dat is logisch. Je hebt een tabel als gegevensbron aan het formulier gekoppeld, en Access laat automatisch het eerste record zien. Wanneer je nu alles op "" gaat zetten dan wis je gewoon het record: levensgevaarlijke manier dus.

Kan je niet in VBA proggelen dat de tabel pas als gegevensbron aan het formulier wordt gekoppeld nadat de handelingen met de drop down box verricht worden?

Verwijderd

Topicstarter
Het is al opgelost :)
Ik heb gewoon de desbetreffende velden de eigenschappen disabled en niet locked (zorgt voor de grijze kleur)te geven en met VB dit ongedaan maken.
Dit door bij het wijzigen van de dropdown de volgende commando's te geven:
CPU.Enabled = True
CPU.Locked = True

Kortom: probleem opgelost.
Pagina: 1