Acquista i nostri libri consigliati su Amazon.it
+ Rispondi al messaggio
Visualizzazione dei risultati da 1 a 6 su 6

filtro su campo numerico con decimali non funzionante completamente

  1. #1
    L'avatar di Tommy_G
    Tommy_G non è in linea Scribacchino
    ciao, ho una combo al cui evento dopo agg. ho messo:

    Private Sub TrovaImporto_AfterUpdate()
        Me.FilterOn = False
        Me.Filter = "Riaccredito =" & str(Me!TrovaImporto)
        Me.FilterOn = True
    End Sub
    
    ho anche provato così:
    Private Sub TrovaImporto_AfterUpdate()
        Me.FilterOn = False
        Me.Filter = "Riaccredito =" & str(Nz(Me!TrovaImporto, 0))
        Me.FilterOn = True
    End Sub
    
    succede che non ne vuole sapere di filtrare gli importi evidenziati nello screen

    Nome:   Cattura.JPG
Visite:  43
Grandezza:  28.3 KB

    tutti gli altri pare invece che vengano filtrati a modo, sbaglio qualcosa nella sintassi della combo?

    PS
    ho messo un'alta combo nel campo a fianco (stesso codice con come controllo diverso) qui non filtra i primi due valori

    Nome:   Cattura2.JPG
Visite:  38
Grandezza:  28.2 KB
    Ultima modifica di Tommy_G; 30-05-2019 18:30 

  2. #2
    Quote Originariamente inviato da Tommy_G Visualizza il messaggio
    ...
    succede che non ne vuole sapere di filtrare gli importi evidenziati nello screen
    La butto lì. Quelli che vedi come numeri con 2 cifre decimali potrebbero forse essere in realtà numeri con ulteriori cifre decimali oltre alle 2 visualizzate e che quindi non trovi la corrispondenza perché confronta due valori in reltà diversi anche se solo visivamente sono uguali?

  3. #3
    L'avatar di Max.Riservo
    Max.Riservo non è in linea Scribacchino
    Il campo Riaccredito è numerico? Single/Double oppure Decimal?
    Se fosse Single/Double (quindi Floating Point - Virgola Mobile) potrebbe essere un problema di 'arrotondamento' tipico dei campi Float.

  4. #4
    L'avatar di @Alex
    @Alex non è in linea Moderatore Globale
    Prova a vedere se questo funziona:
    Private Sub TrovaImporto_AfterUpdate()
        Me.FilterOn = False
        Me.Filter = "Fix(Riaccredito) =" & Fix(Me!TrovaImporto)
        Me.FilterOn = True
    End Sub
    
    Se funziona il problema potrebbe essere come dice MAX...
    Quindi se il campo in tabella è Double prima di usare Str devi convertire in CDbl.
    Uguale in caso di single..

    Ovviamente do per scontato che in fase di salvataggio nella tabella tu abbia fatto un minimo di arrotondamento alla seconda cifra visto che cerchi la seconda cifra altrimenti ti trovi nella tabella una cifra con un sacco di decimali che non riuscirai mai a confrontare.
    Ultima modifica di @Alex; 30-05-2019 19:44 
    ℹ️ Leggi di più su @Alex ...

  5. #5
    L'avatar di Tommy_G
    Tommy_G non è in linea Scribacchino
    avete ragione, è bastato usare una funzione di arrotondamento perchè tutto andasse a posto ...uno dei miei soliti svarioni

  6. #6
    Quote Originariamente inviato da Tommy_G Visualizza il messaggio
    ...uno dei miei soliti svarioni
    sVariando s'impara. (e io sono un maestro in questo)

+ Rispondi al messaggio

Potrebbero interessarti anche ...

  1. campo numerico somma
    Da OptimusPrime2008 nel forum Microsoft Access
    Risposte: 9
    Ultimo Post: 28-10-2010, 11:15
  2. Risposte: 26
    Ultimo Post: 14-09-2008, 01:19
  3. [Access] Campo numerico
    Da giusi nel forum Microsoft Access
    Risposte: 7
    Ultimo Post: 26-05-2008, 16:44
  4. Campo numerico o valuta?
    Da cippalippa nel forum Microsoft Word
    Risposte: 5
    Ultimo Post: 18-01-2008, 20:47
  5. campo con decimali
    Da francof nel forum Visual Basic 6
    Risposte: 3
    Ultimo Post: 12-04-2007, 10:24