|
|
\require{AMSmath}
Re: Re: Re: Automatisch beveiligen van werkblad en resultaat afzonderlijk
Hey Martijn, het spijt me, maar daar ben ik weer, iets doe ik niet goed. Wat heb ik gedaan: Excel via menu 'Extra' de opdracht 'Macro' en dan 'Visual Basic Editor' aangeklikt. Dan kom je in [blad1 (Code)], daarin heb ik dit onderstaande letterlijk ingegeven als volgt: Sub Resultatenbeveiligen(ByVal Target As Range) 'Controleer of de cel onbeveiligd is. If Target.Locked = False Then ' Eerst de beveiliging van het werkblad opheffen ActiveSheet.Unprotect ' Daarna de veranderde cel vergrendelen Target.Locked = True ' Vervolgens het werkblad opnieuw beveiligen ActiveSheet.Protect DrawingObjects:=True, Contents:=True, Scenarios:=True ' Enkel selectie van niet-beveiligde cellen toelaten ActiveSheet.EnableSelection = xlUnlockedCells End If End Sub en vervolgens het bestand opgeslagen. Klopt de eerste regel??? Ik heb het gevoel dat ik bepaalde woorden dien te vervangen door een specifieke aanduiding vanuit werkblad (Excel). Via objectenoverzicht heb ik 'klassen' Blad 1 geselecteerd en vervolgens in 'Leden van Blad 1' Activate geselecteerd. Het werkblad in Excel heb ik beveiligd, in het werkblad is opgenomen de cellen die wel gewijzigd mogen worden door de functie 'geblokkeerd' uit te zetten. Zijn er nog meer handelingen die ik uit moet voeren, want tot mijn spijt werkt het niet, of zit(ten) er in bovenstaande werkwijze nog (een) fout(en). Ik vindt het een lastig onderdeel binnen Excel, maar wel leerzaam, mogelijk nog vaker toe te passen in de toekomst. Alleen de programmeertaal is abracadabra. Opnieuw bedankt voor je hulp, ik voel me met dit onderwerp niet bepaald intelligent. Ik heb ook andere bronnen geraadpleegd zoals help en internet, maar daar heb ik niet echt veel aan. Groetjes Brigitte
Brigit
Student universiteit - maandag 25 juni 2007
Antwoord
Dag Brigitte Iedereen heeft zo zijn specialiteit, gelukkig bestaat er zoiets als wisfaq om je bij dingen als dit te helpen (alhoewel het niet echt wiskunde is, maar kom). De code is perfect, op één ding na: je mag de specifieke naam die ik de subroutine heb gegeven niet wijzigen. Door de naam te veranderen in Resultatenbeveiliging, moet je ergens die routine nog aanroepen. De makkelijkste oplossing is nu om je eerste regel te vervangen doorPrivate Sub Worksheet_Change(ByVal Target As Range) Dit had ik in de vorige werkbladen als naam van de subroutine gebruikt. Het is net dìt stukje tekst dat ervoor zorgt dat Excel na elke wijziging automatisch de code gaat doorlopen!
|
Vragen naar aanleiding van dit antwoord? Klik rechts..!
maandag 25 juni 2007
|
|
home |
vandaag |
bijzonder |
gastenboek |
statistieken |
wie is wie? |
verhalen |
colofon
©2001-2024 WisFaq - versie 3
|