• Privacywetgeving
    Het is bij Helpmij.nl niet toegestaan om persoonsgegevens in een voorbeeld te plaatsen. Alle voorbeelden die persoonsgegevens bevatten zullen zonder opgaaf van reden verwijderd worden. In de vraag zal specifiek vermeld moeten worden dat het om fictieve namen gaat.

Beveiligde cel wijzigen

Status
Niet open voor verdere reacties.

essie vrede

Gebruiker
Lid geworden
10 dec 2007
Berichten
37
Hallo,

Ik heb in Excel een rekenprogramma'tje gemaakt waarin mensen een aantal dingen kunnen invullen en als ze dan op de knop "bereken" drukken, dan komt er een resultaat op basis van een bepaalde formule te staan.
Nu wil ik graag alle cellen in de werkmap blokkeren, behalve de cellen waar mensen zelf gegevens kunnen invullen. Ik wil dus ook de cel blokkeren waarin het uiteindelijke resultaat komt te staan, zodat mensen hier niets aan kunnen veranderen.
Het probleem is nu alleen dat de VBA code die ik gebruik voor de knop "bereken" ook niet de inhoud van de resultaat-cel kan aanpassen.

Weet iemand hoe ik een cel kan blokkeren, zodat gebruikers er geen wijzigingen in kunnen aanbrengen, maar de VBA code van een knop wel?

Bedankt!

Esther

P.S. de VBA code die ik gebruik is erg simpel: Range("D23") = (([C17] * ([C19] + [C20] * [C14]))
 
Beste essie vrede ;)

Waarom is de formule in VBA geschreven ?

Ga met de rechtermuis volgende cellen beveiligen: C14, C17, C19 en C20
Dan op celeigenschappen --> Beveiliging --> geblokkeerd uitvinken.
Dan werkblad beveiligen via menu Controleren --> blad beveiligen.

Zet gewoon in C23 jouw formule --> =C17*(C19+C20)*C14
Deze cel kan dan niet gewijzigd worden.

Groetjes Danny. :thumb:
 
twee manieren:
1 - in de macro achter de knop bereken eerst de blad beveiliging ongedaan maken en aan het einde van de macro de bladbeveiliging terugzetten.
2 - bij het openen van het bestand de blad(en) beveiligen met de optie userinterfaceonly:= true
 
@Danny: Bedankt voor je antwoord. Op die manier had ik het eerst inderdaad gedaan, maar ik wil graag een knop waarop gedrukt moet worden om de berekening uit te voeren, zodat niet tussendoor het resultaat te zien is wanneer nog niet alle velden zijn ingevuld.

@Emil: Bedankt! Het is gelukt met de eerste optie.
 
Beste essie vrede ;)

Neem dan de volgende formule in cel 23:

Code:
=ALS(of(C14="";C17="";C19="";C20="");"";C17*(C19+C20)*C14)
Nu wordt de uitkomst zichtbaar als alle 4 de cellen zijn ingevuld.

Groetjes Danny :thumb:
 
Status
Niet open voor verdere reacties.
Steun Ons

Nieuwste berichten

Terug
Bovenaan Onderaan