Scusa, esigenze "di stagione" mi hanno tenuto lontano dal pc...
Avendo creato un foglio AnagraficaProdotti, quando vuoi inserire un prodotto su uno dei fogli ne copi le colonne A:N e le incolli nel foglio dove vuoi inserire questa voce.
Alternativamente, inserisci in colonna B dei fogli da popolare una Convalida da Elenco, con origine su colonna B di AnagraficaProdotti; poi aggiungi questa macro di WorkSheet_Change:
- Codice: Seleziona tutto
Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Count = 1 Then
If Target.Column = 2 And Target.Value <> "" Then
Application.EnableEvents = False
Target.Offset(0, -1).Select
With Sheets("Anagrafica Prodotti")
mymatch = Application.Match(Target.Value, .Range("B:B"), False)
If Not IsError(mymatch) Then
Target.EntireRow.RowHeight = 31.20
.Cells(mymatch, 1).Resize(1, 15).Copy
ActiveSheet.Paste
Application.CutCopyMode = False
End If
End With
Target.Select
Application.EnableEvents = True
End If
End If
End Sub
In questo modo ti bastera' inserire il nome del prodotto in colonna B e la macro andra' a copiare da AnagraficaProdotti le colonne A:N incollandole nella riga.
Quando vuoi invece rimuovere un prodotto, ti bastera' selezionare la riga ed eliminarla; se vuoi farlo con l'evento doppioclick, inserisci questa macro di BeforeDoubleClick:
- Codice: Seleziona tutto
Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
'
If Target.Column = 1 Then
Target.EntireRow.Delete
Cancel = True
End If
'
End Sub
Anche questo codice va nel modulo vba del foglio di lavoro. L'effetto sara' che facendo doppioclick sulla colonna A della riga che vuoi rimuovere la riga e il suo contenuto sara' eliminato.
Per le date di aggiornamento, visto che sarebbe poco attendibile andare in giro per il workbook a modificare le date, devi intervenire sulla colonna K di AnagraficaProdotti.
Metti le date di aggiornamento in colonna P; quindi per il MetilEtilChetone in P4. Poi in K4 inserisci la formula
- Codice: Seleziona tutto
='ANAGRAFICA PRODOTTI'!$P$4
Replica la formula nelle celle sottostanti (non basta copiarla, perche' l'indirizzo di cella e' "assoluto")
In questo modo, sugli altri fogli viene copiata la formula, che punta alla colonna P. Quindi quando aggiorni una data in colonna P la stessa data comparira' sui fogli dove la sostanza e' stata inserita.
Per il link al documento la situazione e' piu' complicata.
Io direi che potresti sfruttare l'evento FollowHyperlink. Cioe':
-modifichi l'hyperlink su AnagraficaProdotti
-poi sui fogli devi aggiungere una Sub Worksheet_FollowHyperlink, che quindi si attiva nel momento in cui si pigia sull'hyperlink della sostanza (hyperlink che potrebbe non essere aggiornato) e che comanda di seguire invece la Destination (aggiornata) presente su foglio Anagrafica
Il codice di questa Sub pero' lo devi pero' elaborare da solo perche' le suddette "esigenze di stagione" non mi lasciano tempo. Comunque se ti areni sai dove trovarci....
Ciao