Modificare atribute celule intr-un tabel

Închis
gh19612005
Mesaje: 205
Membru din: Lun Dec 28, 2009 6:10 pm
Localitate: Pitesti

Modificare atribute celule intr-un tabel

Mesaj de gh19612005 » Mar Apr 18, 2017 3:34 pm

Buna ziua

Am un tabel in Excel 2010. Dupa ce am introdus complet datele pe o linie, prima celula a acestei linii o setez "OK' sau "Complet". Unele linii nu sunt finalizate si acele prime celule raman goale. Imi doresc sa protejez foaia ce contine acest tabel apasand un buton cu cod VBA in spate, astfel incat celulele liniilor complete sa fie blocate, needitabile, iar celulele celorlalte linii sa poata fi editate.
Va multumesc!
G.H.

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

Re: Modificare atribute celule intr-un tabel

Mesaj de IPP » Mar Apr 18, 2017 4:15 pm

Buna ziua

In lipsa unui fisier exemplu, gasiti atasat o propunere bazata pe o structura cu 6 coloane (incepand cu coloana A). Daca e ceea ce doriti, ramane sa editati in cod in functie de situatia reala

Am folosit urmatorul cod

Cod: Selectaţi tot

Sub ConditionalProtect()

'IPP - 18.04.2017

Application.ScreenUpdating = False

Dim lRow As Long
 lRow = Sheets("Sheet1").UsedRange.Rows.Count + 1
 
Sheets("Sheet1").Select
ActiveSheet.Unprotect

Range("A2:A" & lRow).Locked = False

For Each c In Range("A2:A" & lRow)
  
  With Range("B" & c.Row & ":F" & c.Row)
   If c.Value = "ok" Then
    .Locked = True
    Else
    .Locked = False
   End If
  End With

Next c

ActiveSheet.Protect

Application.ScreenUpdating = True
End Sub
la rularea sa:
-e selectata Sheet1 si deprotejata
-sunt deblocate (astfel incat sa poata fi editate) celulele de pe coloana A acolo unde urmeasa sa se scrie informatia "ok" sau sa se lase blank, dupa caz)
-sunt deblocate toate celulele din lista care nu au in dreptul lor, pe coloana A informatia "ok" (plus primul rand total gol de la sfarsitul listei), respectiv blocate in caz contrar
-e protejata foaia (in aceasta forma fara parola) pentru ca protectia sa devina efectiva.

Pentru testare: deschideti fisierul atasat, activati macro/continutul, editati continutul (ex. incercati sa completati in lista in dreptul unui "ok" existent; stergeti un "Ok", rulati macro si incercati din nou)

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

gh19612005
Mesaje: 205
Membru din: Lun Dec 28, 2009 6:10 pm
Localitate: Pitesti

Re: Modificare atribute celule intr-un tabel

Mesaj de gh19612005 » Mar Apr 18, 2017 9:41 pm

Multumesc, IPP!
Am testat codul, merge perfect, e exact ce-mi doream.

Toate cele bune!
G.H.

Închis

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