Selezionare o Deselezionare dei campi di Tipo SI/No - Access

Anonimo
2016-12-21T14:52:25+00:00

Buon pomeriggio a tutti, ho una tabella chiamata tblFruitori con tre campi chiamati rispettivamente:

BassaSatgione1; AltaStagione e BassaStagione2.

Tutti di tipo SI/NO, come da immagine allegata i cui nomi in progressione sono:chkChange;chkChange1;chkChange2

con questo codice sottoriportato ( e immagine allegata) dell'amico Sandro Peruz riesco a selezionarli/deselezionarli tutti in un colpo solo:

Private Sub chkChange_AfterUpdate()

DBEngine(0)(0).Execute "Update tblFruitori Set BassaStagione1=" & IIf(Me.chkChange = -1, -1, 0), &H80

Me.Requery

End Sub

Private Sub

chkChange1_AfterUpdate()

DBEngine(0)(0).Execute "Update tblFruitori Set AltaStagione=" & IIf(Me.chkChange1 = -1, -1, 0), &H80

Me.Requery

End Sub

Private Sub chkChange2_AfterUpdate()

DBEngine(0)(0).Execute "Update tblFruitori Set BassaStagione2=" & IIf(Me.chkChange2 = -1, -1, 0), &H80

Me.Requery

End Sub

Per la mia esigenza, poiché la tabella è unica e gestisco le tre Stagioni( Bassa1, Alta e Bassa2) ho la necessità che le tre opzioni di selezione/deselezione devono agire sui campi che al primo inserimento in Tabella ( in questa fase iniziale spunto io man mano che inserisco i dati nella tabella le varie opzioni in base alla necessità) inserimento dati risultano già fleggati e non su tutti come avviene ora.

Cioè si deve agire con la selezione/deselezione dei tre campi SI/NO riconoscendo quelli interessati dalla spunta ( e per Stagione)in fase iniziale di inserimento dati.

Spero di essere stato chiaro e comprensibile, chiedetemi pure altro, sono qui.

Ringrazio anticipatamente chi mi aiuta in questo. 

Ciao Nicola

Microsoft 365 e Office | Access | Per la casa | Windows

Domanda bloccata. Questa domanda è stata eseguita dalla community del supporto tecnico Microsoft. È possibile votare se è utile, ma non è possibile aggiungere commenti o risposte o seguire la domanda.

0 commenti Nessun commento
Risposta accettata dall'autore della domanda
Anonimo
2017-01-16T13:03:47+00:00

ciao Nicola,

[...]

Ciao Sandro, grazie per il tuo cortese intervento.

[...]

prego.

[...]

I due campi sono necessari per quanto riguarda la mia realtà lavorativa attuale

[...]

così allora, prendiamo data e ora in singolarmente... :

Private Sub chkChange_AfterUpdate()

Dim strSql As String

strSql = "update tblFruitori set BassaStagione1=" & Me.chkChange & " where " & _

         "[Data_Arrivo] + Nz(Ora_Arrivo, CDate(#11:59:59 PM#)) >= " & Str(CDbl(#4/4/2017 8:00:00 AM#)) & _

         " and [Data_Arrivo] + Nz(Ora_Arrivo, CDate(#11:59:59 PM#))<" & Str(CDbl(#4/10/2017#)) + 1

DBEngine(0)(0).Execute strSql, &H80

  Me.Requery

End Sub

Ciao, Sandro.

La risposta è stata utile?

0 commenti Nessun commento

37 risposte aggiuntive

Ordina per: Più utili
  1. Anonimo
    2016-12-22T20:29:57+00:00

    Ciao Mimmo,scusami se non sono chiaro, rispiego.

    Ammettiamo che inserisca in tabella 6 dati,  

    2 dati relativi alla BassaStagione1 e spunto (SI/NO) chkChange;

    2 dati relativi all'AltaStagione e spunto (SI/NO) chkChange1;

    2 dati relativi alla BassaStagione2 e spunto (SI/NO) chkChange2

    Con il codice di Sandro Peruz se spunto chkChange e lancio questo codice (DBEngine(0)(0).Execute "Update tblFruitori Set BassaStagione1=" & IIf(Me.chkChange = -1, -1, 0), &H80)   mi mette il Flag a SI/NO su tutti e 6 i campi.

    Ecco, qui invece vorrei che mi venissero flaggati solo 2 cioè quelli che inizialmente erano flaggati a SI/NO per BassaStagione1 e cosi via per gli altri campi.

    Cioè, il codice abbinato ai tre pulsanti di comando deve agire sempre sui campi interressati, riferiti alle tre Stagioni (BassaStagione1-AltaStagine e BassaStagione1) e flaggati man mano  che inserisco i dati nella tblFruitori.

    Per l'esempio sopracitato il codice mi deve sempre flaggare solo 2 campi (SI/NO) per stagione e non 6 come avviene ora.

    Dimmi se ci siamo ora.

    Ciao Nicola.

    La risposta è stata utile?

    0 commenti Nessun commento
  2. Anonimo
    2016-12-22T13:58:19+00:00

    Ciao,

    tu dici:

    Quindi con questo scenario, vorrei poter selezionare o deselezionare tutta una volta le  chek cosi come sono state spuntate inizialmente, in fase di inserimento di dati.

    Che significa ?

    Mimmo

    La risposta è stata utile?

    0 commenti Nessun commento
  3. Anonimo
    2016-12-22T13:06:15+00:00

    Ciao Mimmo, allora mi spiego meglio. Man mano che inserisco i dati spunto le varie opzioni in base alle stagioni es. Altastagione, Bassastagione1 e Bassastagione2. Immagina di aver inserito 900 dati,300 per ciascuna stagione (quindi 300 check spuntate per stagione).  Quindi con questo scenario, vorrei poter selezionare o deselezionare tutta una volta le  chek cosi come sono state spuntate inizialmente, in fase di inserimento di dati. Spero di essere stato chiaro Mimmo. Chiedi pure altro se necessario. Ciao Nicola.

    La risposta è stata utile?

    0 commenti Nessun commento
  4. Anonimo
    2016-12-22T10:41:18+00:00

    Ciao Nicola,

    non è molto chiara la domanda,

    forse intendi dire che all'apertura della maschera vuoi che i tre controlli rispecchino la situazione in tabella?

    Ciao Mimmo

    La risposta è stata utile?

    0 commenti Nessun commento