Blocare celule dupa completare

saras
Mesaje:308
Membru din:Mar Iul 13, 2010 8:44 pm
Blocare celule dupa completare

Mesaj de saras » Mar Mai 20, 2014 6:15 pm

Buna,
este o solutie de a bloca celulele dupa completare? Excel 2003
Nu se poate modifica continutul decat cu o parola..
Multumesc.

IPP
Moderator
Moderator
Mesaje:4200
Membru din:Mie Iul 29, 2009 7:26 am
Localitate:Cluj-Napoca

Re: Blocare celule dupa completare

Mesaj de IPP » Mie Mai 21, 2014 5:59 pm

Buna ziua

In principiu problema ar fi, cred, rezolvabila insa depinde mult si de complexitatea ei. Si n-ati oferit detalii.

O propunere pentru o situatie nu prea complicata gasiti in fisierul atasat.


Actiuni prealabile in foaia dorita (in exemplul meu Sheet1, aceste lucruri deja sunt realizate):
-deblocarea tuturor celulelor din foaie: ctrl+a, ctrl+1, tabul Protection, debifare Locked, Ok
-protejare foaie: Tools, Protection, Protect Sheet, parola (in exemplul meu aceasta este "pass"), reconfirmare parola, ok

Se insereaza codul macro la nivel de foaie de interes. Pentru exemplificare, codul de mai jos reactioneaza la modificari in foaia Sheet1 domeniul de celule A2:E20

Cod: Selectaţi tot

Private Sub Worksheet_Change(ByVal Target As Range)

'IPP - 21.05.2014

If Target.Columns.Count > 1 Then Exit Sub

If Not Intersect(Target, Range("A2:E20")) Is Nothing Then

    If Cells(Target.Row, Target.Column).Locked = False Then
    
        With ActiveSheet
        .Unprotect Password:="pass"
        .Cells(Target.Row, Target.Column).Locked = True
        .Protect Password:="pass"
        End With
    
    End If
      
End If
    
End Sub
Pentru ca parola trebuie sa apara explicit si in cod macro, ar fi bine sa parolati si proiectul VBA

Daca se doreste modificarea continutului unei celule deja blocate, se deprotejeaza foaia se modifica ce trebui si se reprotejeaza foaia. In plus, daca se doreste ca celula respectiva sa fie din nou editabila, cu aceeasi ocazie se deblocheaza.
In ultima instanta, daca se vrea o revizuire mai ampla, se poate, temporar, transforma codul in comentarii (sau sa se deschida fisierul fara activarea macro)

IP
Nu aveţi permisiunea de a vizualiza fişierele ataşate acestui mesaj.

saras
Mesaje:308
Membru din:Mar Iul 13, 2010 8:44 pm

Re: Blocare celule dupa completare

Mesaj de saras » Joi Mai 22, 2014 6:06 pm

O sa incerc aceasta varianta.
Cum se paroleaza proiectul VBA?
Multumesc.
Seara buna.

IPP
Moderator
Moderator
Mesaje:4200
Membru din:Mie Iul 29, 2009 7:26 am
Localitate:Cluj-Napoca

Re: Blocare celule dupa completare

Mesaj de IPP » Joi Mai 22, 2014 10:12 pm

Deschideti editorul macro (Alt+F11), tools, vbaProject Properties, tab-ul Protection, bifati lock project for viewing, scrieti parola in cele doua campuri (password si confirm password), ok

djidji_thebest
Mesaje:41
Membru din:Mie Sep 15, 2010 2:28 pm

Re: Blocare celule dupa completare

Mesaj de djidji_thebest » Dum Noi 11, 2018 9:22 am

Buna dimineata,
Am nevoie de un pic de ajutor de la dvs.
Am un tabel pentru programari. Programarile se fac din 15 in 15 minute si se pot programa 3 persoane o data.
Am nevoie ca dupa ce cineva s-a programat, sa nu se poata programa altcineva pe acel loc, sa nu se poata suprascrie peste numele deja introdus in celulele galbene, acestea sa fie blocate.
La final de zi, sau cand se doreste, administratorul sa poata sterge toate programarile si sa il posteze din nou pentru noua saptamana.
Nu aveţi permisiunea de a vizualiza fişierele ataşate acestui mesaj.

djidji_thebest
Mesaje:41
Membru din:Mie Sep 15, 2010 2:28 pm

Re: Blocare celule dupa completare

Mesaj de djidji_thebest » Dum Noi 11, 2018 6:03 pm

In completare - atasat am pregatit un alt excel care sa cuprinda si "formularul" de inregistrare.
Se alege ora si se scrie numele, apoi prin apasarea butonului "Inregistrare" am nevoie de un macro simplu care sa completeze in tabel, la prima pozitie libera de la ora respectiva, numele tocmai inregistrat - adica sa treaca "Dani" la prima pozitie libera de la ora 10:15 in C10.

Am nevoie ca coloanele B-E sa nu poata fi sterse decat cu parola, si sa fie ascunse - daca se poate chiar intr-un alt tab.

Multumesc.
Nu aveţi permisiunea de a vizualiza fişierele ataşate acestui mesaj.

Indigo-99
Mesaje:60
Membru din:Dum Sep 02, 2018 8:21 am

Re: Blocare celule dupa completare

Mesaj de Indigo-99 » Dum Noi 11, 2018 6:10 pm

Salut,

Explicatiile date nu corespund cu ce ai in fisier...
Oricum pentru range-ul colorat poti folosi codul dat de IPP, la care doar schimbi rangeul de interes.
Citeste cu atentie ce este explicat acolo si vei reusi. Daca nu reusesti, spune si te vom ajuta.
"I don’t pretend we have all the answers. But the questions are certainly worth thinking about."
Sir Arthur C. Clarke

tyro_excel_vba
Mesaje:27
Membru din:Joi Oct 18, 2018 3:07 pm

Re: Blocare celule dupa completare

Mesaj de tyro_excel_vba » Joi Mar 07, 2019 2:16 pm

Buna,

Am si eu o intrebare:

Vreau sa permit userilor sa adauge date in fisier excel doar cu ajutorul userform-ului (care adauga datele din text box - uri pe prima linie disponibila din tabel).
Se poate acorda permisiune de adaugare date noi doar prin user form? si apoi userul sa poata edita doar liniile deja completate?

Multumesc!

TudyBTH
Moderator
Moderator
Mesaje:997
Membru din:Joi Feb 11, 2016 2:12 pm
Localitate:Cluj Napoca

Re: Blocare celule dupa completare

Mesaj de TudyBTH » Joi Mar 07, 2019 2:59 pm

Buna,

Nu prea gasesc o logica in ceea ce spuneti.
Deci,
- userul nu poate adauga o linie noua in tabel decat printr-un userform.
- imediat dupa introducerea datelor spuneti ca se permite editarea tuturor datelor din tabel!
Care este rolul userform-ului?
Am invatat sa inotam in apa, ca pestii
Am invatat sa zburam in aer, ca pasarile
A ramas doar sa invatam sa traim pe Pamant, ca Oamenii.

Indigo-ONE
Mesaje:451
Membru din:Mar Dec 11, 2018 8:54 pm

Re: Blocare celule dupa completare

Mesaj de Indigo-ONE » Joi Mar 07, 2019 3:01 pm

Salut,
Se poate acorda permisiune de adaugare date noi doar prin user form?
Se poate
apoi userul sa poata edita doar liniile deja completate?
Se poate, dar nu ar fi mai bine sa introduca datele direct in foaie? (atata timp cat le poate edita) .Ce sens mai are Userformul?


"I fear the day that technology will surpass our human interaction. The world will have a generation of idiots."
Albert Einstein

Scrie răspuns

Înapoi la “Visual Basic for Application (VBA) cu Excel - Intrebari tehnice”