Excel: popolare una cella con la data di modifica della riga a cui appartiene

felino

Utente Attivo
12 Dic 2013
902
10
18
Aci Catena (Catania)
Ciao a tutti,
su excel ho due colonne:

DESCRIZIONE | DATA MODIFICA

vorrei fare in modo che quando popolo una della celle della colonna descrizione, la cella accanto venga popolata con la data odierna (al momento dell'inserimento).

Nella seconda colonna avevo inserito la formula:
Codice:
=SE(NON(VAL.VUOTO(B8)); OGGI(); "")
ma ogni volta che apro il file viene visualizzata la data corrente.

E' possibile agire a livello formula o serve necessariamente una macro?

Grazie.
 

marino51

Utente Attivo
28 Feb 2013
2.927
166
63
Lombardia
E' possibile agire a livello formula o serve necessariamente una macro?
credo sia necessario usare una macro che viene eseguita solo con l'update della cella
l'ho sempre fatto con dei form, mai su celle direttamente,
ti posto un esempio del codice agganciato ad un campo del form.
2 operazioni, formatta il valore inserito e aggiorna un totale richiamando una sub
Codice:
Private Sub TextBox17_AfterUpdate()
  If Len(TextBox17) > 0 Then
    TextBox17 = Format(TextBox17, "##,##0.00 €")
  End If
  update_total
End Sub
penso sia lo stesso nel caso si voglia aggiornare una cella alla modifica di un'altra,
prova a fare riferimento a questa pagina
 

marino51

Utente Attivo
28 Feb 2013
2.927
166
63
Lombardia
ti confermo che funziona, ho fatto copia/incolla di un esempio nella pagina citata
1580907959152.png


risultato

1580908059592.png


aggiustando la macro, ottieni il risultato che vuoi
 

felino

Utente Attivo
12 Dic 2013
902
10
18
Aci Catena (Catania)
prova a fare riferimento a questa pagina
Usando la proprietà indicata ho creato la seguente macro:
Codice:
Private Sub Worksheet_Change(ByVal Target As Range)
    If Intersect(Target, Range("A1:A10")) Is Nothing Or Target.Cells.Count > 1 Then Exit Sub
    Application.EnableEvents = False
    'Set the values to be uppercase
    Target.Value = UCase(Target.Value)
    Cells(Target.Row, "B").Value = Date
    Application.EnableEvents = True
End Sub
Grazie per il suggerimento, funziona.