Risolto Modificare una macro inserendo una protezione celle

GreenLily

Nuovo utente
9 Giugno 2021
15
1
excel 2019
0
Buonasera a tutti. Sto utilizzando una macro che serve per dividere i dati di una tabella e trasformarli in più cartelle di lavoro di excel. Per comodità mi appoggio su una macro trovata su internet, che di per sé funziona in maniera eccellente.
Vorrei sapere come aggiungere un comando che mi consenta di bloccare solo alcune celle di una tabella (es. quelle che vanno da A1 a I39), impostando una password. In questo modo dovrei ottenere tante cartelle excel con le celle già protette, senza dover, di volta in volta, modificare ogni file che si crea con la macro di suddivisione.
Spero di essere stata comprensibile. Allego il file oggetto di simulazione.
Ringrazio in anticipo chi potrà rispondermi. Grazie
 

Allegati

Rubik72

Excel/VBA Expert
Supermoderatore
12 Dicembre 2015
11.319
845
49
Cosenza
Excel 2016
932
Ciao, prova con questa routine con qualche commento:
Visual Basic:
    'sblocca tutte le celle
    Cells.Locked = False

    'blocca solo le celle richieste
    Range("A1:I39").Locked = True

    'attiva protezione foglio
    ActiveSheet.Protect
 

GreenLily

Nuovo utente
9 Giugno 2021
15
1
excel 2019
0
Ciao! Ti ringrazio, in realtà il comando per bloccare le celle lo conosco o meglio credo che possa andar bene fare:

ThisWorkbook.Worksheets("Foglio1").Range(A1:D39).locked = true
Activesheet.protect password:"m"

Giusto?
Il problema è che non saprei in che punto della macro inserirlo.
Avevo provato a metterlo all'inizio ma ovviamente non funziona.
 

GreenLily

Nuovo utente
9 Giugno 2021
15
1
excel 2019
0
[...]
Il problema è che non saprei in che punto della macro inserirlo.
Avevo provato a metterlo all'inizio ma ovviamente non funziona.
Devi inserire questi comandi, prima del salvataggio del nuovo file, ma sostituisci l'oggetto ThisWorkbook con ActiveWorkbook
Ciao, ti ringrazio!
Purtroppo, però, anche posizionando il comando dove ha detto tu, la macro mi protegge tutte le celle del foglio, quando a me servirebbe che me ne bloccasse solo alcune.
Mi sembra strano, visto che nel comando avevo specificato di bloccare solo uno specifico range!
 

GreenLily

Nuovo utente
9 Giugno 2021
15
1
excel 2019
0
Ciao, prova con questa routine con qualche commento:
Visual Basic:
    'sblocca tutte le celle
    Cells.Locked = False

    'blocca solo le celle richieste
    Range("A1:I39").Locked = True

    'attiva protezione foglio
    ActiveSheet.Protect
Pardon, invece funziona tutto! Avevo sottovalutato l'importanza del comando cells.locked=false (che non avevo inserito prima).

Grazie mille per tutto!!!
 

Sostieni ForumExcel

Aiutaci a sostenere le spese e a mantenere online la community attraverso una libera donazione!