come posso fare per poter copiare il risultato di una celle in un nuovo foglio e cancellare la prima cella sul primo foglio?

Anonimo
2012-12-22T11:31:58+00:00

Ho fatto un piccolo foglio che immettendo nella cella B3 il numero di pezzi di euro, valore euro nella cella C3,e il totale nella cella D3, il totale nella cella D18, ho collegato nel foglio2, nella cella B2 il risultato, tieni conto che nella cella A2 è inserita la data.

Vorrei che nel momento che io cancello la colonna B3:b17 del foglio1, la cella B2 del foglio2 contenga ancora il risultato ottenuto prima.

Spero di essere stato abbastanza chiaro

Grazie mille

Antonio

Microsoft 365 e Office | Excel | Per la casa | Windows

Domanda bloccata. Questa domanda è stata eseguita dalla community del supporto tecnico Microsoft. È possibile votare se è utile, ma non è possibile aggiungere commenti o risposte o seguire la domanda.

0 commenti Nessun commento

Risposta accettata dall'autore della domanda

Anonimo
2012-12-26T00:28:56+00:00

Ciao AntonioMoccia,

potremmo partire dal definire un Nome, per esempio MiaFormula, nel cui riferimento memorizzare la formula che dovrà, a nostro comando, sparire per essere sostituita dal suo valore:

  • menù Formule
  • Definisci nome
  • Nome: MiaFormula
  • Riferito a: (e qui incolli la formula in questione, completa del segno iniziale di uguale)
  • [OK]

Quindi nella cella in questione sostituisci la formula con questa:

  • =MiaFormula

e il risultato non cambierà.

Poi piazzi sul foglio un Interruttore:

  • menù Sviluppo
  • Modalità progettazione
  • Inserisci
  • Interruttore (Controllo ActiveX)
  • Clic sul foglio col pulsante del mouse e viene disegnato un Interruttore
  • Doppio clic sull'Interruttore

e ti troverai nell'ambiente di sviluppo Visual Basic incorporato in Excel, col cursore che lampeggia fra queste righe:

Private Sub ToggleButton1_Click()

|

End Sub

Dove lampeggia il cursore incolla le istruzioni seguenti, in cui sostituirai "C1" con il riferimento che vuoi:

    With Range("C1")

      If .HasFormula Then

        .Value = .Value

      Else

        .Formula = "=MiaFormula"

      End If

    End With

Quindi esci dalla Modalità progettazione e verifica che detto Interruttore si comporti come desideri.

Ti resta solo da assegnargli un testo significativo.

La risposta è stata utile?

0 commenti Nessun commento

31 risposte aggiuntive

Ordina per: Più utili
  1. Anonimo
    2013-11-13T13:25:27+00:00

    Grazie AndyCap64 ora provo e poi ti faccio sapere.

    La risposta è stata utile?

    0 commenti Nessun commento
  2. Eliminata

    Questa risposta è stata eliminata a causa di una violazione del codice di comportamento. La risposta è stata segnalata manualmente o identificata tramite il rilevamento automatizzato prima dell'esecuzione dell'azione. Per ulteriori informazioni, fai riferimento al codice di comportamento.


    I commenti sono stati disattivati. Ulteriori informazioni

  3. Anonimo
    2013-11-11T08:58:15+00:00

    Ciao scusa se rispondo in ritardo ma avevo il computer in riparazione, l'esempio che mi hai mandato rispecchia preciso quello che devo fare cioè bloccare le cifre blù quando devo camcellare i numeri su un'altro foglio (le cifre blù sono all'occorrenza risultati di somme fatti sull'altro foglio), se puoi mandami una piccola guida su come fare sia il bottone che la procedura.

    Grazie in anticipo ciao.

    Ciao,

    questa è una di quelle operazioni che è più facile a farsi che a spiegarsi, però prima di iniziare, fai una copia del file e lavora su quest'ultima, visto e considerato che se non sono svolte correttamente tutte le operazioni potresti correre il rischio di riscriverti tutte le formule.

    Per la creazione del 'bottone', che, però, non è un bottone bensì un interruttore ActiveX, vedi questa panoramica dei controlli disponibili, mentre qui come inserire un nuovo controllo, in alternativa puoi copiare il controllo dal mio file.

    Come avrai notato, la riga 30 del mio esempio contiene una copia delle formule che utilizzo nelle righe 2:21 del mio esempio. Definisci anche tu una riga che contiene tutte le formule e che sarà utilizzata per ripristinarle nell'intervallo originario, per funzionare correttamente è indispensabile che le formule siano trascinabili (se nella riga 30 del mio esempio, nelle colonne A:D, copi i valori contenuti un una qualsiasi delle precedenti righe, devi ottenere gli stessi risultati delle formule di quella riga).

    Ora, interveniamo sul codice vba, tasto destro sull'interruttore e quindi visualizza codice, dovresti trovarti qualcosa del tipo:

    Private Sub ToggleButton1_Click()

    End Sub

    tra queste due righe incolla le seguenti:

    Dim rTemplate As Range, rTarget As Range, cel As Range

    With ActiveSheet

    '--- definisce l'intervallo della riga template con le formule originali

    Set rTemplate = .Range("E30:N30")


    '--- definisce l'intervallo contenente le formule da sostituire con i valori e viceversa

    Set rTarget = .Range("E2:N21")

    End With

    Application.ScreenUpdating = False

    Set cel = ActiveCell

    With ToggleButton1

    If ToggleButton1.Value = True Then

    .BackColor = vbGreen

    .Caption = "Mostra Formule"

    rTarget.Copy

    rTarget.PasteSpecial xlPasteValues

    Else

    .BackColor = vbYellow

    .Caption = "Mostra Valori"

    rTemplate.Copy

    rTarget.PasteSpecial xlPasteFormulas

    End If

    End With

    cel.Activate

    Application.CutCopyMode = False

    Set rTemplate = Nothing

    Set rTarget = Nothing

    Set cel = Nothing

    L'ultimo intervento che devi fare è modificare le righe in grassetto, al posto di E30:N30 dovrai indicare il tuo range contenente le formule da utilizzarsi per il ripristino, mentre al posto di E2:N21 dovrai indicare l'intervallo che contiene le formule da bloccare o ripristinare.

    Buon lavoro,

    Andrea.

    La risposta è stata utile?

    0 commenti Nessun commento
  4. Anonimo
    2013-11-07T18:28:41+00:00

    Ciao scusa se rispondo in ritardo ma avevo il computer in riparazione, l'esempio che mi hai mandato rispecchia preciso quello che devo fare cioè bloccare le cifre blù quando devo camcellare i numeri su un'altro foglio (le cifre blù sono all'occorrenza risultati di somme fatti sull'altro foglio), se puoi mandami una piccola guida su come fare sia il bottone che la procedura.

    Grazie in anticipo ciao.

    La risposta è stata utile?

    0 commenti Nessun commento