PDA

View Full Version : ACCESS : consiglio per filtro maschera con codice VBA


LotharInt
22-10-2012, 15:37
Salve ragazzi ho bisogno di aiuto per creare un controllo su una maschera access, ma mi serve qualcuno che mi aiuti con un po' di codice VBA...
Penso che sia una cosa semplice per un programmatore...
in poche parole ho due maschere riferite alla stessa tabella, quindi in entrambe le maschere sono presenti gli stessi record, ma le due maschere illustrano campi diversi. Nelle due maschere la parte anagrafica è la stessa, quindi ci sono caselle con nome , cognome, codice fiscale che sono invariate. Ho bisogno di creare un pulsante che mi passa da una maschera all'altra aprendo la seconda maschera al record (nome e cognome della persona) corrispondente della prima, ho creato quindi un pulsante di comando che con una macro applica un filtro e mi apre la seconda maschera direttamente al record della prima, ma c'è un problema: viene applicato un filtro nella maschera aperta che non fa scorrere gli altri record, quindi esso va poi sbloccato manualmente o tramite un apposito pulsante..ma è una soluzione poco elegante!


Vorrei che mi diceste quale codice VBA devo associare al pulsante per far si che la seconda maschera venga aperta in corrispondenza del nome e cognome della prima ma che siano al contempo già sbloccati gli altri record (quindi che venga automaticamente rimosso il filtro).

Ecco il codice attuale:

Private Sub pulsante_Click()
On Error GoTo pulsante_Click

Dim stDocName As String
Dim stLinkCriteria As String

stDocName = "maschera2"

stLinkCriteria = "[Idpersona_maschera1]=" & Me![IDpersona_maschera2]

DoCmd.OpenForm stDocName, , , stLinkCriteria

DoCmd.Close acForm, "maschera1", acSavePrompt

Exit_pulsante_Click:
Exit Sub

Ho aggiunto il comando DCmd.close per far chiudere la prima maschera quando si apre la seconda, ma come vi dicevo poi ho dovuto creare un pulsante a parte con il comando "showallrecords" per sbloccare il filtro e non mi piace molto :(. Inoltre se provo a mettere il comando ShowAllRecords al codice sovrastante si sbloccano tutti i record ma la maschera2 non è visualizzata a partire dalla persona della maschera1 ma dal primo record. :muro:

Grazie a chi mi aiuterà!