[RISOLTO]Errore 3075

di il
5 risposte

[RISOLTO]Errore 3075

Ciao a tutti , sto creando una maschera con filtri multipli più casella di controllo purtroppo mi da errore 3075 qualcuno può aiutarmi ?
IMG20220430002612.jpg
IMG20220430002612.jpg


IMG20220430002358.jpg
IMG20220430002358.jpg

il codice è questo :
Dim StrAnno, StrCategoria As String
Dim Scegli, StrScelta As String
Dim FiltroVendita As String
Dim FiltroLocazione As String

If IsNull(Me.CboAnno) Then
StrAnno = "(nz([Anno]) Like '*')"

Else
StrAnno = "[Anno] = " & Me.CboAnno
End If
If IsNull(Me.CboCategoria) Then
StrCategoria = "(nz([Categoria]) Like '*')'"
Else
StrCategoria = "[Categoria] = " & Me.CboCategoria
End If
If [SceltaVendita] = 0 Then
FiltroVendita = "[Vendita] like '*'"
Else
FiltroVendita = "[Vendita] = 0 "
End If
If [SceltaLocazione] = 0 Then
FiltroLocazione = "[Locazione] like '*'"
Else
FiltroLocazione = "[Locazione] = 0 "
End If

StrScelta = StrAnno & "AND" & StrCategoria & "AND" & FiltroVendita & "AND" & FiltroLocazione
Scegli = "Select * From Economica where " & StrScelta
Me.IncassoGenerale.Form.RecordSource = Scegli
Me.IncassoGenerale.Form.Requery

5 Risposte

  • Re: [RISOLTO]Errore 3075

    Ciao,
    l'errore è della query, da come vedo sembra non ci siano spazi tra gli operatori logici.

    Potresti esporre la query, è più semplice capire...

    Ciao
  • Re: [RISOLTO]Errore 3075

    Il codice è questo :

    Dim strWhere AS String

    If Not IsNull(Me.cboAnno) Then strWhere = " AND [Anno] = " & Me.cboAnno
    If Not IsNull(Me.cboCategoria) Then strWhere = strWhere & " AND [Categoria] = " & Me.cboCategoria
    If Me.SceltaVendita Then strWhere = strWhere & " AND [Vendita] = True"
    If Me.SceltaLocazione Then strWhere = strWhere & " AND [Locazione] = True"

    With Me.IncassoGenerale
    If Len(strWhere) = 0 then
    .Form.Filter = ""
    .Form.FilterOn = False
    Else
    .Form.Filter = Mid(strWhere,6)
    .Form.FilterOn = True
    End If
    End With

    se il controllo cboCategoria restituisce una Stringa, e non un valore Numerico, la riga dece essere sostituita dalla seguente:

    If Not IsNull(Me.cboCategoria) Then strWhere = strWhere & " AND [Categoria] = " & Chr(34) & Me.cboCategoria & Chr(34)

    e l'Origine record della sottomaschera IncassoGenerale deve essere "Select * From Economica"
  • Re: [RISOLTO]Errore 3075

    Stifone ha scritto:


    Purtroppo questa parte del codice non funziona , mentre la parte della categoria con le caselle di controllo è perfetto :

    With Me.IncassoGenerale
    If Len(strWhere) = 0 then
    .Form.Filter = ""
    .Form.FilterOn = False
    Else
    .Form.Filter = Mid(strWhere,6)
    .Form.FilterOn = True
    End If
    End With
    IMG20220430121701.jpg
    IMG20220430121701.jpg


    IMG20220430121650.jpg
    IMG20220430121650.jpg


    IMG20220430122036.jpg
    IMG20220430122036.jpg

  • Re: [RISOLTO]Errore 3075

    Prova a modificare la riga
    If Not IsNull(Me.cboCategoria) Then strWhere = " AND [Anno] = " & Me.cboAnno
    con
    If Not IsNull(Me.cboCategoria) Then strWhere = " AND [Anno] = " & Chr(34) & Me.cboAnno & Chr(34)
    altrimenti posta un file di esempio, con un minimo di dati e sostituendo eventuali dati sensibili, su un sito di condivisione, tipo DropBox o simili, forse risulta più facile aiutarti potendo vedere direttamente la struttura dei dati.
  • Re: [RISOLTO]Errore 3075

    Stifone ha scritto:


    Prova a modificare la riga
    If Not IsNull(Me.cboCategoria) Then strWhere = " AND [Anno] = " & Me.cboAnno
    con
    If Not IsNull(Me.cboCategoria) Then strWhere = " AND [Anno] = " & Chr(34) & Me.cboAnno & Chr(34)
    altrimenti posta un file di esempio, con un minimo di dati e sostituendo eventuali dati sensibili, su un sito di condivisione, tipo DropBox o simili, forse risulta più facile aiutarti potendo vedere direttamente la struttura dei dati.
    Buonasera, ho provato adesso funziona ti ringrazio tantissimoo!!
Devi accedere o registrarti per scrivere nel forum
5 risposte