Oppure

Loading
05/06/12 11:35
untipo
Salve probabilmente il titolo è poco chiaro e forse si tratta di un errore proprio da principiante. Ho provato a fare delle ricerche ma i risultati sono più che altro problemi di concatenzione delle stringhe che non credo sia la base del problema. Mi spiego. Da due form ho la possibilità di caricare un altro form che mi serve per le stampe.
Ad esempio da frma e frmb che hanno delle textbox con gli stessi nomi faccio partire frmstampa che mi servirà per far stampare i valori in frma e frmb che ad esempio in entrambi i form siano tex(0) e tex(1).
Ora se avessi solo frma da frmstampa scriverei frma.tex(0) e frma.tex(1) per stampare. Ma essendoci frmb, controllo quale sia il form caricato tramite questa funzione :
Dim fm As Form
For Each fm In Forms
If LCase(fm.Name) = LCase(NomeForm) Then
formcrct = True
Exit For
End If
Next

e una volta stabilito quale sia il form che lancia frmstampa vorrei associare frma o frmb ad una "variabile" per esempio risul in modo da usare sempre risul.tex(0) e risul.tex(1) . Ho provato ma il massimo che ho ottenuto è che ottengo una stringa "risul.tex(0)" che non mi visualizza naturalmente il valore della textbox. Suggerimenti per questo niubbo ? Grazie mille.
aaa
05/06/12 11:46
nessuno
Hai già la variabile fm che puoi usare per quello che vuoi tu.

Dichiarala a livello di form e usala.
Ricorda che nessuno è obbligato a risponderti e che nessuno è perfetto ...
---
Il grande studioso italiano Bruno de Finetti ( uno dei padri fondatori del moderno Calcolo delle probabilità ) chiamava il gioco del Lotto Tassa sulla stupidità.
05/06/12 12:07
untipo
grazie per la celere risposta ma dichiarando la variabile
dim fm as form
come la associo al form chiamante (frma o frmb) ?
se la dichiaro e basta :
Variabile oggetto o variabile del blocco With non impostata (errore 91)
questo è l'errore che mi dà quando arrivo al nome di una textbox ad esempio fm.tex(0)

aaa
05/06/12 12:13
nessuno
La usi dopo che il codice con la For Each ha terminato il suo compito
Ricorda che nessuno è obbligato a risponderti e che nessuno è perfetto ...
---
Il grande studioso italiano Bruno de Finetti ( uno dei padri fondatori del moderno Calcolo delle probabilità ) chiamava il gioco del Lotto Tassa sulla stupidità.
05/06/12 12:16
untipo
quella funzione però si trova nel modulo.bas che richiamo da frmstampa tramite :

if formcrct("frma" ) = true then
qui ci starebbe il codice per associare fm ad frma ?



P.s. ho provato a dichiarare fm public nel modulo bas e funziona altra possibilità non c'è ?
Ultima modifica effettuata da untipo 05/06/12 12:18
aaa
05/06/12 12:27
nessuno
Fai in modo che la funzione restituisca un oggetto Form (restituendo fm locale) e usalo nel form da cui lo chiami con

dim f as Form

f = FunzioneCheCerca()
Ricorda che nessuno è obbligato a risponderti e che nessuno è perfetto ...
---
Il grande studioso italiano Bruno de Finetti ( uno dei padri fondatori del moderno Calcolo delle probabilità ) chiamava il gioco del Lotto Tassa sulla stupidità.
05/06/12 12:28
untipo
Grazie mille per la disponibilità :-)
aaa
05/06/12 12:52
untipo
cmq ho provato come da te suggerito ma con :
f = funzioneCheCerca()

mi restituisce "Utilizzo non valido di property"

aaa