Visualizzazione dei risultati da 1 a 10 su 10

Hybrid View

  1. #1
    Quote Originariamente inviata da sixdas Visualizza il messaggio
    Salve, ho creato un progetto excel con due foglio una di riepilogo e l'altro che fa da database dei dati, ora tramite la funzione cerca verticale richiamo i valori di una riga, io vorrei dalla pagina di riepilogo modificarli, senza dover entrare nel foglio database. Sapete darmi qualche consiglio su come fare?

    Con le formule credo proprio che non ce la farai perché le formule possono modificare solo il valore visualizzato nella cella in cui sono contenute e non il valore di altre celle (sempre che non mi sia perso qualcosa ).

    Col vba invece non ci sono problemi, questo codice, per esempio, appena inserisci un valore nella cella C8 lo copia nel Foglio2:

    codice:
    Private Sub Worksheet_Change(ByVal Target As Range)
       If Not Intersect(Target, [C8]) Is Nothing Then
          [C8].Copy Destination:=Sheets("Foglio2").[C8]
       End If
    End Sub




    _
    La democrazia rappresentativa ha fatto il suo tempo, è ora di passare alla democrazia diretta.
    www.beppegrillo.it

  2. #2
    Utente di HTML.it
    Registrato dal
    Mar 2011
    Messaggi
    258
    Quote Originariamente inviata da NonCeLaFaccio+ Visualizza il messaggio
    Con le formule credo proprio che non ce la farai perché le formule possono modificare solo il valore visualizzato nella cella in cui sono contenute e non il valore di altre celle (sempre che non mi sia perso qualcosa ).

    Col vba invece non ci sono problemi, questo codice, per esempio, appena inserisci un valore nella cella C8 lo copia nel Foglio2:

    codice:
    Private Sub Worksheet_Change(ByVal Target As Range)
       If Not Intersect(Target, [C8]) Is Nothing Then
          [C8].Copy Destination:=Sheets("Foglio2").[C8]
       End If
    End Sub
    _
    Ciao, ok il codice che hai scritto va bene, ma se la cella c8 della secondo foglio vorrei renderla dinamica, cioè ogni volta sara una diversa come potrei fare?
    Ultima modifica di sixdas; 04-12-2013 a 20:48

  3. #3
    Quote Originariamente inviata da sixdas Visualizza il messaggio
    Ciao, ok il codice che hai scritto va bene, ma se la cella c8 della secondo foglio vorrei renderla dinamica, cioè ogni volta sara una diversa come potrei fare?
    Sai qual è il mio problema nel farti degli esempi? Che mi dai pochissime informazioni e quindi posso fare solo esempi un po' scolastici perché non riesco a inquadrare il problema e a suggerirti soluzioni più specifiche.

    E' chiaro che tu hai tutto il diritto di tutelare la tua privacy e non raccontare su un forum pubblico quello che stai facendo però questo complica le cose e rallenta molto il discorso.

    Comunque proviamoci lo stesso.

    Adesso per esempio mi sto chiedendo cosa intendi esattamente per "rendere dinamica la cella di arrivo".

    Probabilmente hai in mente una qualche regola che la individui sulla base di un certo numero di elementi ... ma io non conosco né la regola né gli elementi da valutare quindi anche in questo caso mi limiterò ad un esempio un po' stupido che però spero possa far fare un passo avanti:

    codice:
    Private Sub Worksheet_Change(ByVal Target As Range)
       If Not Intersect(Target, [C8]) Is Nothing Then
          Sheets("Foglio2").Range([A1]) = [C8]
       End If
    End Sub

    Questo codice è simile al precedente perché anche questo copia il valore contenuto in C8 sul Foglio2 ma la cella in cui effettua la copia dev'essere indicata in A1.

    Se quindi in A1 scrivi, per esempio, F4 e poi inserisci un valore in C8, questo valore te lo ritroverai in F4 di Foglio2.

    Ovviamente trattandosi di un esempio non gestisco le condizioni di errore quindi in A1 devi inserire un valore valido come nome di cella altrimenti l'esecuzione si interromperà (se si interrompe clicca su Debug e poi clicca sul quadratino Ripristina in alto).

    Questa copia quindi non è più verso una casella fissa ma verso quella che viene indicata dinamicamente da un processo esterno che in questo caso è la digitazione manuale in A1 ma potrebbe essere qualsiasi altra cosa.
    La democrazia rappresentativa ha fatto il suo tempo, è ora di passare alla democrazia diretta.
    www.beppegrillo.it

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2026 vBulletin Solutions, Inc. All rights reserved.