Sintassi vba per operare con form variabili

di il
8 risposte

Sintassi vba per operare con form variabili

Scusate per il titolo poco chiaro ma ho un problemino che data la mia ignoranza nel vba non riesco a risolvere e di cui non ho trovato nulla in rete.
La mia necessità è di operare su un controllo di una maschera dall'esterno ( da un modulo). Tuttavia il nome della maschera su cui operare è variabile.

Ad esempio devo modificare un campo di una maschera assegnando valore 1
Forms!mascheracontrollo!campo1=1
dove mascheracontrollo è una variabile di tipo stringa.
Ho provato con
Forms!(mascheracontrollo)!campo1
ma mi da' errore :\

8 Risposte

  • Re: Sintassi vba per operare con form variabili

    Amici della serie: io me la canto e io me la suono ho risolto. A chi si trovasse nella mia situazione ecco il codice da utilizzare
    Forms.Item(nome_form).campo = 1
  • Re: Sintassi vba per operare con form variabili

    Non voglio fuorviare il tuo discorso, tra l'altro non so usare VBA. Io ho dei casi simili, ma piuttosto che avere molte maschere con "sostanza uguale" (cioè stessi controlli ma con nomi e significati diversi), ho preferito lavorare con una sola maschera e modificare, volta per volta, questa o quella proprietà controllo. Direi di giocare-impostando soprattutto sulla proprietà Etichetta della maschera. Poi puoi sempre creare delle sintassi di condizione che verificano se l'Etichetta si chiama Tizio oppure Caio.
  • Re: Sintassi vba per operare con form variabili

    thebusterazz ha scritto:


    amici della serie: io me la canto e io me la suono ho risolto. A chi si trovasse nella mia situazione ecco il codice da utilizzare
    Forms.Item(nome_form).campo = 1
    La tua soluzione è corretta, tecnicamente è la migliore, ma si può usare una forma esplicita altrettanto corretta e più semplice
    
    Forms(NomeForm)!Controllo.Value
    L'uso del PUNTO al posto del PUNTOESCLAMATIVO è una regola che i programmatori avanzati si danno per distinguere PROPRIETA' da OGGETTI.
  • Re: Sintassi vba per operare con form variabili

    ho preferito lavorare con una sola maschera e modificare, volta per volta, questa o quella proprietà controllo
    cioè hai una sola maschera che modifichi volta peer volta? :0 e per le maschere complesse come fai ?
  • Re: Sintassi vba per operare con form variabili

    thebusterazz ha scritto:


    ho preferito lavorare con una sola maschera e modificare, volta per volta, questa o quella proprietà controllo
    cioè hai una sola maschera che modifichi volta peer volta? :0 e per le maschere complesse come fai ?
    Con la dovuta accortezza puoi farlo anche con maschere complesse. Ti segnalo questo post
    https://www.iprogrammatori.it/forum-programmazione/access/cambiare-molte-proprieta-maschera-t15727.html
    dove, ad alcuni miei timori in partenza, Alex mi ha risposto con un via libera. Ho testato ed è vero.
  • Re: Sintassi vba per operare con form variabili

    Vero, ma serve contestualizzare...
    Io Odio ed evito di generare OGGETTI non utili, quindi Customizzo le mie FORM in modo che se possono essere RICICLATE ben venga...

    Questo mai e poi mai a discapito di SICUREZZA e STABILITA'... quindi lo faccio solo la dove si trattano dati OMOLOGHI con la stessa origine e nomi Campi/Controlli.... insomma non è da applicare a tutto, anche perchè fare 1 maschera in più non da problemi.
  • Re: Sintassi vba per operare con form variabili

    Mi collego a questo argomento per non creare un post nuovo...
    forms(nomeform).nomecontrollo...

    come faccio con nome controllo anch'esso in una variabile???
  • Re: Sintassi vba per operare con form variabili

    Come possiamo aiutarti ad interpretare il regolamento nel modo migliore...?
Devi accedere o registrarti per scrivere nel forum
8 risposte