PROBLEMA CON ROUTINE

di il
2 risposte

PROBLEMA CON ROUTINE

Ho creato un db che mi cataloghi, ricerchi ecc i miei cd musicali. Ho creato una maschera chiamata frmSelettore in cui voglio segliere il Genere che dovrebbe darmi artista e album.
Nella routine evento ho scritto
Option Compare Database

Private Sub cmdChiusura_Click()

'Chiude la maschera

DoCmd.Close

End Sub

Private Sub lstListaGenere_AfterUpdate()

'Se nella casella di riepilogo lstListaGenere
'è stato selezionato il valore <Tutte>,
'imposta la proprietà Origine dati della casella
'di riepilogo lstGenereMusicali su una query
'che estrae i campi Artista e Album e N°
'da tutti i record della tabella Musicali...

If Me.lstListaGenere = "<Tutte>" Then

Me.lstGenereMusicali.RowSource = "SELECT Artista AS Artista, " _
& " Album AS Album FROM tb1Musicali, " _
& " N° AS N° FROM tb1Musicali, " _
& " ORDER BY tb1Musicali.Genere"

'... altrimenti imposta la proprietà Origine dati della
'casella di riepilogo lstGenereMusicali su una query
'che estrae i campi Artista e Genere dai soli record
'dellA tabella tb1Musicali che hanno nel campo Genere
'il valore selezionato nella casella di riepilogo
'lstListaGenere

Else

Me.lstGenereMusicali.RowSource = _
"SELECT Artista AS Artista, " _
& " Album AS Album FROM tb1Musicali" _
& " WHERE Album = '" & Me.lstListaGenere & "'" _
& " N° AS N° FROM tb1Musicali" _
& " WHERE N° = '" & Me.lstListaGenere _
& " ORDER BY tb1Musicali.Genere"



End If






End Sub


Private Sub lstGenereMusicali_AfterUpdate()
'Crea una variabile per contenere il valore selezionato
'nella casella di riepilogo lstGenereMusicali

Dim strSelezione As String

'Rigenera il contenuto di se stessa

Me.Recalc

'Trasferisce nella variabile il valore selezionat
'nella casella di riepilogo lstGenereMusicali

strSelezione = Me.lstGenereMusicali

'Apre la maschera frmMusicali mostrando soltanto
'il record che nel campo Genere contiene
'il valore assegnato alla variabile strSelezione
'Attenzione all'uso delle virgolette semplici
'e doppie!

DoCmd.OpenForm "frmMusicaliConRicerca", , , "Artista = '" & strSelezione & "'"







End Sub


Private Sub lstListaGenere_AfterUpdate()

End Sub

Purtroppo mi da questo errore
L'espressione Dopo aggiornamento immessa come impostazione della proprietà di evento ha generato l'errore seguente: Rilevato nome non univoco lstListaGeneri_AfterUpdate.

2 Risposte

  • Re: PROBLEMA CON ROUTINE

    Ho creato un db che mi cataloghi, ricerchi ecc i miei cd musicali. Ho creato una maschera chiamata frmSelettore in cui voglio segliere il Genere che dovrebbe darmi artista e album.
    Nella routine evento ho scritto
    Option Compare Database

    Private Sub cmdChiusura_Click()

    'Chiude la maschera

    DoCmd.Close

    End Sub

    Private Sub lstListaGenere_AfterUpdate()

    'Se nella casella di riepilogo lstListaGenere
    'è stato selezionato il valore <Tutte>,
    'imposta la proprietà Origine dati della casella
    'di riepilogo lstGenereMusicali su una query
    'che estrae i campi Artista e Album e N°
    'da tutti i record della tabella Musicali...

    If Me.lstListaGenere = "<Tutte>" Then

    Me.lstGenereMusicali.RowSource = "SELECT Artista AS Artista, " _
    & " Album AS Album FROM tb1Musicali, " _
    & " N° AS N° FROM tb1Musicali, " _
    & " ORDER BY tb1Musicali.Genere"

    '... altrimenti imposta la proprietà Origine dati della
    'casella di riepilogo lstGenereMusicali su una query
    'che estrae i campi Artista e Genere dai soli record
    'dellA tabella tb1Musicali che hanno nel campo Genere
    'il valore selezionato nella casella di riepilogo
    'lstListaGenere

    Else

    Me.lstGenereMusicali.RowSource = _
    "SELECT Artista AS Artista, " _
    & " Album AS Album FROM tb1Musicali" _
    & " WHERE Album = '" & Me.lstListaGenere & "'" _
    & " N° AS N° FROM tb1Musicali" _
    & " WHERE N° = '" & Me.lstListaGenere _
    & " ORDER BY tb1Musicali.Genere"



    End If






    End Sub


    Private Sub lstGenereMusicali_AfterUpdate()
    'Crea una variabile per contenere il valore selezionato
    'nella casella di riepilogo lstGenereMusicali

    Dim strSelezione As String

    'Rigenera il contenuto di se stessa

    Me.Recalc

    'Trasferisce nella variabile il valore selezionat
    'nella casella di riepilogo lstGenereMusicali

    strSelezione = Me.lstGenereMusicali

    'Apre la maschera frmMusicali mostrando soltanto
    'il record che nel campo Genere contiene
    'il valore assegnato alla variabile strSelezione
    'Attenzione all'uso delle virgolette semplici
    'e doppie!

    DoCmd.OpenForm "frmMusicaliConRicerca", , , "Artista = '" & strSelezione & "'"







    End Sub


    Private Sub lstListaGenere_AfterUpdate()

    End Sub

    Purtroppo mi da questo errore
    L'espressione Dopo aggiornamento immessa come impostazione della proprietà di evento ha generato l'errore seguente: Rilevato nome non univoco lstListaGeneri_AfterUpdate.
    TopConnessoConnesso
  • Re: PROBLEMA CON ROUTINE

    A parte che dovresti scrivere nella sezione access, non duplicare il post e usare i tag code per il codice, dovresti eliminare il codice

    Private Sub lstListaGenere_AfterUpdate()

    End Sub

    che non serve
Devi accedere o registrarti per scrivere nel forum
2 risposte