Print side | Luk vindue

Ophævelse af beskyttet celle via VBA

Udskrevet fra: Dansk Regneark Forum
Kategori: Hjælp til regneark.
Forum navn: Makro og VBA
Forum beskrivelse: Hjælp til Makroer og VBA-programmering
Web-adresse: https://forum.excel-regneark.dk/forum_posts.asp?TID=1106
Udskrevet den: 12.Maj.2024 kl. 09:17


Emne: Ophævelse af beskyttet celle via VBA
Besked fra: Bjarne
Emne: Ophævelse af beskyttet celle via VBA
Posteringsdato: 19.Feb.2013 kl. 11:17

Hjælp til formel i VBA (Bruger Excel 2007)

Funktions Forklaring:

 

Kolonnerne A,B,D og G samt kolonne K,L og M, er skrive beskyttet

Kolonne C og E skal indsættes med talværdier.

I kolonne C må værdien være min. 1 eller max. 3

I Ark 1 bruger jeg Tab til at springe over de beskyttede celler.

 

I Ark 1 er der opført en :  “Private Sub Worksheet_Change (By Val Target As Range)”

 

If Range (”C” & Target.Row).Value = 1 Then ”herfra har jeg brug for hjælp”

    Så skal beskyttelsen KUN ophæves i Range (”K” & Target.Row)

 

If Range (”C” & Target.Row).Value = 2 Then ”herfra har jeg brug for hjælp”

    Så skal beskyttelsen KUN ophæves i Range (”L” & Target.Row)

 

If Range (”C” & Target.Row).Value = 3 Then ”herfra har jeg brug for hjælp”

    Så skal beskyttelsen KUN ophæves i Range (”M” & Target.Row)

 

Kan det lade sig gøre eller er jeg helt forkert på den?



-------------
//Bjarne



Svar:
Besked fra: EXCELGAARD
Posteringsdato: 19.Feb.2013 kl. 11:56
Prøv med denne:
Private Sub Worksheet_Change(ByVal Target As Range)
      
      Me.Unprotect
      Range("A:B,D:D,G:G,K:M").Locked = True
      If Range("C" & Target.Row).Value = 1 Then Range("K" & Target.Row).Locked = True
      If Range("C" & Target.Row).Value = 2 Then Range("L" & Target.Row).Locked = True
      If Range("C" & Target.Row).Value = 3 Then Range("M" & Target.Row).Locked = True
      Me.Protect

End Sub



-------------
Husk, at trykke på [Tak], hvis du kan lide et indlæg.
Husk, at trykke på [Accepteret Svar], hvis du kan bruge et løsningsforslag.


Besked fra: EXCELGAARD
Posteringsdato: 20.Feb.2013 kl. 08:20
HOV!

Kommer lige til at se, at der vist har indsneget sig en lille Too-Many-fingers-On-The-Keyboard fejl!

De tre 'IF' linjer skal selvfølgelig slutte med = False

Dummy mig, men håber du selv fik øje på det...


-------------
Husk, at trykke på [Tak], hvis du kan lide et indlæg.
Husk, at trykke på [Accepteret Svar], hvis du kan bruge et løsningsforslag.


Besked fra: Bjarne
Posteringsdato: 21.Feb.2013 kl. 09:05
Hug
 
Nej ikke dumme dig!
Fandt ud af det, da jeg så din løsning.
Fungerer fint, men jeg fandt en lille tilknyttet problemstilling, som jeg ikke havde taget i ed.
 
Prøver lige at løse det selv, ellers vil jeg gerne have mulighed for at vende tilbage.
 
Med venlig hilsen


-------------
//Bjarne



Print side | Luk vindue