View Full Version : foglio di calcolo blocco cancellazione o modifica su cella
Gentilissimi devo condividere un file (pensavo di usare un Foglio di Lavoro Google) in cui gli utenti possano segnare dei valori in un elenco.
Ho la necessità però che appena una cella viene valorizzata diventi protetta in modifica e cancellazione.
Come si può fare?
Non trovando la soluzione sto girando il problema.
Pensavo di Creare due fogli di cui uno nascosto (foglio 2)
Nel foglio 1 inserisco 3 colonne
Colonna A data
Colonna b slot orario
Colonna C da compilare
Appena uno compila un qualunque riga la colonna C
Ed esce O passa ad altra cella
Copia la riga compilata (cella in A, B, e C) nel foglio 2
Cancella la riga copiata dal foglio 1
In questo modo potrò vedere le cose inserite sicuro che non siano state modificate da altri e nessuno può scrivere in quello slot orario.
Per fare questo ho provato a scrivere questo codice che funziona in parte:
Sub Prova()
Sheets("foglio1").Select
Range("G1").Value = Range("C1").End(xlDown).Offset(0, 0).Value
Range("F1").Value = Range("C1").End(xlDown).Offset(0, -1).Value
Range("E1").Value = Range("C1").End(xlDown).Offset(0, -2).Value
Range("E1:G1").Select
Selection.Cut
Sheets("Foglio2").Visible = True
Sheets("foglio2").Select
Range("A65000").End(xlUp).Offset(1, 0).Select
ActiveSheet.Paste
ActiveWindow.SelectedSheets.Visible = False
Sheets("foglio1").Select
Range("C1").End(xlDown).Offset(0, -2).RowDelete
# Questo non funziona, dovrebbe andare sulla cella di colonna A dove ha trovato la cella compilata ed eliminare la riga intera.
End Sub
La macro funziona in parte, trova la cella copia il contenuto in G1, copia le due colonne precedenti in E1 e F1, seleziona queste 3 celle, le "taglia" attiva il foglio 2 (che è nascosto) cerca la prima riga vuota e incolla la selezione.
RI nasconde il foglio 2 e dopo dovrebbe ritornare sulla prima cella della riga tovata prima e dovrebbe cancellare la riga.
Tutto questo è in Excell poi dovrò trovare il modo di passare in Google Sheets.
Sistemato il codice ora funziona
Sub Prova()
Sheets("foglio1").Select
Range("C1").End(xlDown).Offset(0, -2).Select
Application.CutCopyMode = False
Selection.Cut
Range("E1").Select
ActiveSheet.Paste
Range("C1").End(xlDown).Offset(0, -1).Select
Application.CutCopyMode = False
Selection.Cut
Range("F1").Select
ActiveSheet.Paste
Range("C1").End(xlDown).Offset(0, 0).Select
Application.CutCopyMode = False
Selection.Cut
Range("G1").Select
ActiveSheet.Paste
Range("E1:G1").Select
Selection.Cut
Sheets("Foglio2").Visible = True
Sheets("foglio2").Select
Range("A65000").End(xlUp).Offset(1, 0).Select
ActiveSheet.Paste
ActiveWindow.SelectedSheets.Visible = False
Sheets("foglio1").Select
End Sub
Ora il problema è riscriverlo per Google Sheets!
vBulletin® v3.6.4, Copyright ©2000-2025, Jelsoft Enterprises Ltd.