rij selecteren in gegevensbladweergave

  • Onderwerp starter Onderwerp starter scw
  • Startdatum Startdatum
Status
Niet open voor verdere reacties.

scw

Gebruiker
Lid geworden
5 jun 2009
Berichten
530
Ik zit met de volgende vraag:

Ik heb een formulier met daarop een subformulier welke in de gegevensbladweergave wordt weergegeven (Excel stijl). Nu zou ik graag willen dat wanneer ik op een veld klik (dus van een willekeurige kolom), de hele rij meteen wordt geselecteerd (dus eigenlijk precies hetzelfde effect als wanneer je aan de linkerkant de recordkiezer aanklikt, maar dan moet het bij een veld). Kan dit mogelijk in de eigenschappen van het subformulier worden ingesteld? Ik heb daar al in gezocht... is het uberhaupt mogelijk???

Hopelijk kunnen jullie het mij vertellen!

Hartelijk dank alvast!
 
Waarom zou je om te beginnen een rij willen selecteren? Ik denk ook niet dat het kan; je werkt in Access op Veld level, en niet op een rjj.

Michel
 
Uitleg

Excuses Michel,

Mogelijk behoeft mijn vraag wat meer uitleg van mijn kant:

Mijn DB heeft een hoofdformulier en nu heb ik het zo voor elkaar gekregen dat wanneer ik aan de zijkant klik (recordkiezer) dat er dan een nieuw formulier opent over deze record (StLinkCriteria). Mijn DB gebruikers hebben aangegeven en ik beaam dat volledig, dat het makkelijk zou zijn wanneer je gewoon kunt dubbelklikken op de regel. Het zou dus behoorlijk gebruiksvriendelijk zijn....

Hopelijk weet er iemand toch nog raad om dit te bereiken!
 
Volgens mij zou je dat moeten kunnen bereiken door voor elk veld in het formulier (ik neem aan dat het een doorlopend formulier is) een actie te hangen aan het <Bij Dubbelklikken> gebeurtenis. Dat is dan steeds dezelfde actie, dus daar zou ik dan een aparte functie of Sub van maken, die je bij elk veld aanroept.

Michel
 
Zoals OctaFish al aangeeft moet je inderdaad aan elk veld op je subformulier een dubbelklik-gebeurternis procedure koppelen. De code die je hiervoor kunt gebruiken is:

DoCmd.RunCommand acCmdSelectRecord

Rebmog
 
Hartelijk dank!

Perfect! Het werkt nu precies hoe ik het voor ogen had!

Hartelijk dank, zeker ook aan Rebmog voor het command!!:thumb:
 
Enter-toets

Ohjaaa..... weten jullie toevallig ook hoe ik de Enter toets erbij kan betrekken???

Dus wanneer ik een record selecteer en vervolgens zou die dan met een druk op de Enter-toets het formulier moeten openen op dezelfde wijze??

Hartelijk dank!
 
Je kunt op een KeyDown wel een actie zetten, maar dan werkt de code in eerste instantie op elke toetsaanslag. Je moet daar dan wel een check doen op de ingedrukte toets, als je alleen de <Enter> toets wilt gebruiken.

Michel
 
Je moet allereerst instellen dat de Enter toets niet de "Standaard" werking heeft.

Je opent het formulier in Formulierweergave, dus niet ontwerpweergave.
Rechtermuisklik op het formulier en Eigenschappen selecteren.
Dan het tabblad "Overige" selecteren.
Bij "werking Enter-toets" selecteer "Nieuwe regel in veld" ipv Standaard.
Even het formulier opslaan, sluiten en weer openen.
Hierna nog ff checken -> "Nieuwe regel in veld".

Je moet nog VBA code toevoegen onder het veld (Gebeurtenis: Bij toets indrukken) - is de laatste optie in de eigenschappen lijst.
In vba staat zoiets als:
Code:
Private Sub MijnVeld_KeyPress(KeyAscii As Integer) 

End Sub.

Hiertussen de volgende code plaatsen:
Code:
If KeyAscii = 13 Then '13 = Enter toets
        DoCmd.RunCommand acCmdSelectRecord

        Dim stDocName As String
        Dim stLinkCriteria As String
        
        stDocName = "frmVoorbeeld"
        
        stLinkCriteria = "[VoorbeeldID]=" & Me![VoorbeeldID]
        DoCmd.OpenForm stDocName, , , stLinkCriteria
End If

Ik heb ook ff jouw frmVoorbeeld en VoorbeeldId gebruikt.
Dan is het nu nog een kwestie van kopiëren en plakken. ;)

Veel suc6.
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan