Newsgroup: it.comp.appl.access
Titolo: Potete illustrarmi queste poche righe di codice

L'obiettivo è quello di inserire i dati utilizzando una casella combinata
che aggiorna la lista predefinita (contenuta nella tabelle categorie per
esempio) ogni qual volta l'elemento che inserisco non è contenuto in lista.
Il codice l'ho copiato da un'autocomposizione di Access.
L'unico problema è che quando mi si apre la maschera della tabella categorie
il record è sempre il primo e non il nuovo pronto per l'inserimento.
Posto che Categorie è il nome della casella combinata e frmCategorie è la
maschera che richiamo nella quale inserisco i nuovi dati
dov'è il problema in questo codice
Private Sub Categorie_DblClick(Cancel As Integer)
    Dim lngAccountTypeID As Long
    If IsNull(Me![Categorie]) Then
        Me![Categorie].Text = ""
    Else
        lngAccountTypeID = Me![Categorie]
        Me![Categorie] = Null
    End If
    DoCmd.OpenForm "frmCategorie", , , , , acDialog, "GotoNew"
    Me![Categorie].Requery
    If lngAccountTypeID <> 0 Then Me![Categorie] = lngAccountTypeID
Exit_categorie_DblClick:
End Sub
Potete illustrarmi il codice qui riportato?
Per esemprio con la riga Me![Categorie].REquery che cosa si ottiene?
e per favore che cos'è Me! che lo trovo dappertutto?
Grazie infinite


non ho capito cosa vuoi fare, ma un minimo aiuto posso dartelo:
Me si riferisce alla maschera corrente.
prova a mettere Me in un modulo non appartenente a una maschera e vedi un pò
cosa succede.
prova a scrivere una sub nel modulo di una maschera e metti una sola riga:
msgbox 
me.name
ti restituisce un messaggio contenete il nome della maschera
Me.Requery dice al programma di "rieseguire" la query su cui si basa la
maschera corrente
suggerimento: il tasto F1 è magico! selezioni una parola che non conosci
(del codice, ovviamente) e ti appare l'help relativo al termine evidenziato
devi avere installato anche il sistema di help.
---
Outgoing mail is certified Virus Free.
Checked by AVG anti-virus system (
http://www.grisoft.com
).
Version: 6.0.422 / Virus Database: 237 - Release Date: 20/11/2002

 wrote in message
ClaD9.6175$3l.1...@twister1.libero.it...


 cosa succede.
prova a mettere me in un modulo classe e vedi cosa succede
--
a.cara
togli qualcosa dall'email

     DoCmd.OpenForm "frmCategorie", , , , , acDialog, "GotoNew"
da help
DoCmd.OpenForm nomemaschera[, visualizzazione][, nomefiltro][,
condizioneWHERE][, modalitàdati][, modalitàfinestra][, apriarg]
Questa e' la sintassi di openform "GotoNew" corrispone a [apriarg]
apriarg	
Espressione stringa. Questa espressione viene utilizzata per impostare
la proprietà OpenArgs della maschera. Questa impostazione può quindi
essere utilizzata dal codice in un modulo di maschera, come la routine
evento Apri. È possibile fare riferimento alla proprietà OpenArgs anche
nelle macro e nelle espressioni.
Si supponga, ad esempio, che la maschera che si apre sia un elenco a
modulo continuo di clienti. Se si desidera spostare lo stato attivo sul
record di un determinato cliente all'apertura della maschera, è
possibile specificare il nome del cliente con l'argomento apriarg e
quindi utilizzare il metodo FindRecord per spostare lo stato attivo sul
record del cliente del quale è stato specificato il nome.
Questo argomento è disponibile soltanto in Visual Basic.
questa e la spiegazione di apriarg
se non gestisci il "GotoNew" nella routine di Form_open
e' dura che ti vata a GotoNew (nota senza doppi apici)
questo potrebbe essere il codice
var = me.OpenArgs
If Len(strNomeImpiegato) > 0 Then
	DoCmd.GoToRecord acDataForm, "nomeform", acNewRec
End If


 > prova a mettere Me in un modulo non appartenente a una maschera e vedi
un pņ
