Salve Mimmo,
alla fine ho provato a mettere in pista il tuo consiglio creando gli step in questo modo:
ho creato una maschera con 13 (c1-c13) quadratini disposti uno vicino all'altro ben riquadrati e nascosti
prima dell'esecuzione della prima query (che è di eliminazione tabella) faccio aprire la maschera "BarraStatus" come maschera di popup
poi dopo l'esecuzione di ogni query (che alla fine sono di accodamento) faccio visualizzare il relativo quadratino. fino all'ultima query dove faccio esequire la chiusura della maschera "BarraStatus" e l'apertura della maschera con il riepilogo dei dati che mi hanno popolato la mia tabella.
Il problema è che all'avvio appare la mascherina ma rimane completamente bianca (con Non Risponde in barra del titolo) fino all'esecuzione dell'ultima query ed effettivamente si vede in basso sulla status bar di Access che le query avanzano e la mia maschera "flesha" in base all'avanzamento della status bar di Access.
come prima prova ho "buttato giù" questo codice:
Function Camere()
DoCmd.SetWarnings (False)
DoCmd.OpenForm "BarraStatus", acNormal
DoCmd.OpenQuery "Qry_Camere_Prenotazioni_Del"
Forms!BarraStatus!C1.Visible = True
If DLookup("DISPONIBILI_D", "Qry_Camere_Prenotazioni_VER", "DISPONIBILI_D > 0") Then
DoCmd.OpenQuery "Qry_Camere_Prenotazioni_Dpp"
Forms!BarraStatus!c2.Visible = True
DoCmd.OpenQuery "Qry_Camere_Prenotazioni_DppOpz"
Forms!BarraStatus!c3.Visible = True
DoCmd.OpenQuery "Qry_Camere_Prenotazioni_DppLs"
Forms!BarraStatus!c4.Visible = True
DoCmd.OpenQuery "Qry_Camere_Prenotazioni_DppLsOpz"
Forms!BarraStatus!c5.Visible = True
DoCmd.OpenQuery "Qry_Camere_Prenotazioni_DppUs"
Forms!BarraStatus!c6.Visible = True
DoCmd.OpenQuery "Qry_Camere_Prenotazioni_DppUsOpz"
Forms!BarraStatus!c7.Visible = True
Else
Forms!BarraStatus!c2.Visible = True
Forms!BarraStatus!c3.Visible = True
Forms!BarraStatus!c4.Visible = True
Forms!BarraStatus!c5.Visible = True
Forms!BarraStatus!c6.Visible = True
Forms!BarraStatus!c7.Visible = True
End If
If DLookup("DISPONIBILI_S", "Qry_Camere_Prenotazioni_VER", "DISPONIBILI_S > 0") Then
DoCmd.OpenQuery "Qry_Camere_Prenotazioni_Sing"
Forms!BarraStatus!c8.Visible = True
DoCmd.OpenQuery "Qry_Camere_Prenotazioni_SingOpz"
Forms!BarraStatus!c9.Visible = True
Else
Forms!BarraStatus!c8.Visible = True
Forms!BarraStatus!c9.Visible = True
End If
If DLookup("DISPONIBILI_T", "Qry_Camere_Prenotazioni_VER", "DISPONIBILI_T > 0") Then
DoCmd.OpenQuery "Qry_Camere_Prenotazioni_Tripl"
Forms!BarraStatus!c10.Visible = True
DoCmd.OpenQuery "Qry_Camere_Prenotazioni_TriplOpz"
Forms!BarraStatus!c11.Visible = True
Else
Forms!BarraStatus!c10.Visible = True
Forms!BarraStatus!c11.Visible = True
End If
If DLookup("DISPONIBILI_Q", "Qry_Camere_Prenotazioni_VER", "DISPONIBILI_Q > 0") Then
DoCmd.OpenQuery "Qry_Camere_Prenotazioni_Quad"
Forms!BarraStatus!c12.Visible = True
DoCmd.OpenQuery "Qry_Camere_Prenotazioni_QuadOpz"
Forms!BarraStatus!c13.Visible = True
Else
Forms!BarraStatus!c12.Visible = True
Forms!BarraStatus!c13.Visible = True
End If
DoCmd.SetWarnings (True)
DoCmd.Close acForm, "BarraStatus"
End Function
è vero che l'ho fatta più semplice di quanto sembri ma speravo che alla fine lo fosse