Risolto Prendere dati da una sottomaschera

avatar17

Utente abituale
23 Maggio 2018
109
16
milano
2016
2
CIao, ho aperto un'altra discussione per il problema seguente, credo sia una questione di sintassi:
ho una maschera principale con un pulsante di comando, quando clicco sul pulsante, si apre una seconda maschera (maschera1) che contiene 3 etichette (prima etichetta, seconda etichetta e terza etichetta) e una sottomaschera (sotto maschera) che contiene un'etichetta (sotto etichetta). Una volta aperta la maschera 1, il contenuto della "sotto etichetta" dovrebbe copiarsi nella "terza etichetta" e il contenuto della "seconda etichetta" dovrebbe copiarsi nella "prima etichetta" se questa è vuota.
Ovviamente non funziona, la condizione i non vuol saperne di andare se la "prima etichetta" è null e il contenuto della "sotto etichetta" non si copia nella "terza etichetta".
Qualche suggerimento? allego il file.
 

Allegati

denische

Nuovo utente
26 Settembre 2019
13
3
2007
1
Innanzitutto devi prendere confidenza con procedura di debug ed analizzare gli errori anche attraverso la finestra immediata e non solo dire che non riesci.
Ogni volta che scrivi del codice è buona abitudine riportare anche la dicitura Option explicit che ti permette di verificare immediatamente se ci sono errori quando vai a compilare il file.
E' cattiva abitudine scrivere nomi che presentano spazi (anche delle sotto maschere) usa degli_ per legare le parole altrimenti devi usare le parentesi quadre.

Spero di aver capito quello che tu vuoi fare (non ne capisco il senso, ma lo saprai tu), io lo farei non al click del pulsante in maschera ma sull'evento Open di maschera1.

Visual Basic:
Private Sub Form_Open(Cancel As Integer)

If Len(Me.prima_etichetta.Value & vbNullString) = 0 Then      [COLOR=rgb(97, 189, 109)]' dicitura corretta per verificare se una textbox è vuota[/COLOR]
    Me.prima_etichetta.Value = Me.seconda_etichetta.Value
End If

 Me.Terza_etichetta.Value = Me.Sotto_maschera.Form.etichetta_sotto.Value
[COLOR=rgb(97, 189, 109)]'[maschera seconda].[Form].[terza etichetta] = [sotto maschera].[Form].[etichetta sotto][/COLOR]

End Sub
ciao
 
  • Like
Reactions: giulianovac

avatar17

Utente abituale
23 Maggio 2018
109
16
milano
2016
2
Grazie, risolto finalmente.
Grazie per i consigli, ho sempre usato i debug per analizzare gli errori, ma non mi davano un'informazione che mi permettesse di capire.
 

denische

Nuovo utente
26 Settembre 2019
13
3
2007
1
Qui puoi trovare un'ottima guida per imparare ad usare il debug, che come ripeto è una condizione essenziale per continuare ad usare il Vba. Poi ovviamente non ti da la "pappa pronta", ma ti aiuta a ragionare, attraverso l'uso dei punti di interruzione su come avvengono i vari passaggi di quello che scrivi.... e su dov'è il o i problemi che riscontri man mano.

http://forum.masterdrive.it/access-79/access-debug-44533/

ciao
 

Sostieni ForumExcel

Aiutaci a sostenere le spese e a mantenere online la community attraverso una libera donazione!