[Risolto] Macro per cancellazione valore in casella combinata

di il
4 risposte

[Risolto] Macro per cancellazione valore in casella combinata

Buongiorno a tutti,

sono alle prese con una piccola esigenza che, nonostante le mie scarsissime conoscenze di VBA, mi piacerebbe riuscire a risolvere con una macro:

all'interno di una maschera vorrei inserire un pulsante che attivi una macro con lo scopo di cancellare il valore proposto in un campo, a sua volta collegato con una maschera nella quale il valore è gestito con una casella combinata.

Provo a spiegarmi meglio circa la situazione attuale:
Dalla maschera A"", collegata alla tabella "tabA", scelgo il nominativo di Pippo da una tendina e cliccando su di un tasto accedo alla maschera collegata "B"
Nella maschera "B", visualizzo il campo "B1", che ripropone i valori collegati alla maschera di selezione "C" collegato al campo "ID vano" .
Nella maschera "B" vorrei inserire un pulsante che lanci la macro "cancellainb".
La macro "cancellainb", perché azzeri il valore visualizzato in B1, dovrebbe in pratica andare a cancellare sulla riga della tabella "tabA" il valore contenuto nel campo "ID vano".

Purtroppo non ho conoscenze adeguate a risolvere da solo ma così a naso immaginavo per voi potesse essere fattibile darmi dei suggerimenti sul codice da usare.

La mia idea in sostanza sarebbe banalmente che all'avvio della macro, questa legga il campo "ID utente" associato all'utente che sto visualizzando nella maschera "A" e cancelli i valore "ID vano" nella tabella tabA ma... come fare?

Grazie in anticipo a chi volesse provare ad aiutarmi.

Un saluto
byebaz!

4 Risposte

  • Re: [Risolto] Macro per cancellazione valore in casella combinata

    bazzecola ha scritto:


    Dalla maschera A"", collegata alla tabella "tabA", scelgo il nominativo di Pippo da una tendina e cliccando su di un tasto accedo alla maschera collegata "B"
    OK.

    bazzecola ha scritto:


    Nella maschera "B", visualizzo il campo "B1"
    OK.

    bazzecola ha scritto:


    che ripropone i valori collegati alla maschera di selezione "C" collegato al campo "ID vano"
    Qua io mi perdo.

    Da dove spunta C?

    Riguardo una azione macro che deve cancellare un valore, usa l'azione ImpostaValore con i suoi argomenti Elemento e Espressione da compilare.
    https://support.office.com/it-it/article/azione-di-macro-impostavalore-36dfca71-0d8c-40fc-8b9f-31cfe5f48aab
    A Elemento potresti lasciare vuoto oppure scrivere "".
  • Re: [Risolto] Macro per cancellazione valore in casella combinata

    Anzitutto grazie per averci messo la testa

    ..C spunta a partire da B ma è una maschera in cui c'è solo la tendina e alcuni campi non modificabili.
    Esempio:
    in A scelgo Pippo e da A accedo a B
    da B, accedo a C dove scelgo il valore del vano.. tipo "Ed2-1-20" (Edificio2 .. piano 1 ..stanza 20 - che sono valori visualizzati in caselle specifiche della maschera C)
  • Re: [Risolto] Macro per cancellazione valore in casella combinata

    Hai risolto con l'azione macro che ti ho detto?
    Altrimenti io non ho capito il tuo contesto e avrei bisogno di una descrizione dettagliata:
    - nomi propri di tutte le tabelle
    - nomi propri di tutti i campi di ogni tabella con indicazione della chiave primaria
    - le relazioni
    - nomi propri delle maschere
    - rispiega tutto usando i nomi propri
  • Re: [Risolto] Macro per cancellazione valore in casella combinata

    OsvaldoLaviosa ha scritto:


    Hai risolto con l'azione macro che ti ho detto?
    Altrimenti io non ho capito il tuo contesto e avrei bisogno di una descrizione dettagliata:
    - nomi propri di tutte le tabelle
    - nomi propri di tutti i campi di ogni tabella con indicazione della chiave primaria
    - le relazioni
    - nomi propri delle maschere
    - rispiega tutto usando i nomi propri
    Ciao Osvaldo,
    ti ringrazio della disponibilità ma a quanto pare la soluzione che cercavo non è più necessaria.. .

    Giusto per farti sapere, in una parte di codice ho trovato l'istruzione che è già stata utilizzata e te la così per conoscenza.. io allo stato attuale non ci sarei mai arrivato

    "
    StrSQL = "UPDATE Personale SET Personale.[ID vano] = '0', [Sospensione Anagrafica]=true, DataSospensione=Date() WHERE (((Personale.IDPersonale)=" & Me.IDPersonale & "))"
    DoCmd.SetWarnings False
    DoCmd.RunSQL StrSQL
    DoCmd.SetWarnings True
    End If
    End If
    "

    Grazie e alla prossima.. byebaz!
Devi accedere o registrarti per scrivere nel forum
4 risposte