Aggiornamento campi turni

di Anonimizzato31498 il
4 risposte
Buongiorno, perdonatemi ma con tanta passione cerco e studio ma a volte non so come uscirne.
Per puro scopo didattico volevo fare un calendario turnistiche di lavoro.
Ho creato una maschera calendario che all’apertura si carica sul mese corrente, poi con due Cbo seleziono mese ed anno che voglio visualizzare un un evento click di un pulsante. Ho aggiunto anche delle caselle calcolate per visualizzare la settimana in corso e fin qui funziona perfettamente.
Volevo ora visualizzare una data di riferimento e che mi riportasse in una casella di testo, a fianco di quella relativa alla settimana, il turno di lavoro di quella data.
In due Cbo (CboTurnoggi e CboSettimanali) ho inserito il turno odierno (mattino, pomeriggio, notte) e I turni settimanali (2turni, 3 turni). Su una casella calcolata (Selezione) ho unito i dati (2M,2P,3M,3P,3N cioè 2turni oggi matino, 2 turni oggi pomeriggio etc…..) avrei piacere che a partire dalla settimana odierna che faccio il “Mattino” in automatico popoli delle caselle relative alle settimane a seguire (Turno1,Turn2,Turno3) col turno corretto cioè; settimana prossima Notte e quella successiva Pomeriggio etc…..
Su Selezione ho inserito un selectcase me.Selezione.Value con le 5 Case is “2M” o”3M” etc….e per provarlo ho messo dei Msgbox. Ma poi stop non so più come procedere
Penso che i comandi probabilmente siano Dlookup o Dcount ma non so. Mi rimetto a voi per un aiuto….
Private Sub CboSettimanali_AfterUpdate()
Select Case Me.CboSettimanali.Text
Case Is = "2 Turni"
Value = 2
Case Is = "3 Turni"
Value = 3
End Select
Me.Selezione.Value = (CboSettimanali.Value) & (CboTurnoggi.Value)
End Sub

Private Sub CboTurnoggi_AfterUpdate()
Select Case Me.CboTurnoggi.Value
Case Is = "Mattino"
Value = "M"
Case Is = "Pomeriggio"
Value = "P"
Case Is = "Notte"
Value = "N"
End Select
Me.Selezione.Value = (CboSettimanali.Value) & (CboTurnoggi.Value)
End Sub

Select Case Me.Selezione.Value
Case Is = "2M"
MsgBox "PM"
Case Is = "2P"
MsgBox "MP"
Case Is = "3M"
MsgBox "NPM"
Case Is = "3P"
MsgBox "MNP"
Case Is = "3N"
MsgBox "PMN"
End Select

4 Risposte

  • La questione appare molto arzigogolata. Tuttavia occorre che tu espliciti:
    - nomi propri delle tabelle sottostanti le maschere
    - nomi propri di tutti i campi, con indicazione della chiave primaria
    - le relazioni
    - rispiega tutto passo passo, magari con un esempio pratico, usando i nomi propri
  • Sinceramente al momento non ci sono tabelle. Mi serve sapere il dato richiesto direttamente sulla maschera e chiusa la maschera cancellare tutto.
  • Un database senza tabelle non ha neanche senso di esistere. Il VBA è uno strumento per automatizzare/personalizzare cose che Access di nativo non ha previsto. Le maschere generalmente poggiano su tabelle. Le tabelle forniscono i DATI da manipolare poi.
    Non sono in grado di aiutarti senza queste premesse.
  • Ok. Preparo e ti giro .... grazie
Devi accedere o registrarti per scrivere nel forum
4 risposte