• 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.

Macro afschermen om toepassing 'idiot proof' te maken

Status
Niet open voor verdere reacties.

JanKeuzenkamp

Gebruiker
Lid geworden
11 dec 2006
Berichten
14
Hallo.

Ik heb twee bestanden die via een HYPERLINK zijn gekoppeld en in dezelfde map staan.
In elk van de bestanden heb ik een macro gedefinieerd waarbij ik de optie 'in deze werkmap' heb aangeklikt. De ene macro wordt aangeroepen met CTRL A, de andere met CTRL B. Nu blijkt dat in elk van de gevallen ook de macro wordt gevonden en uitgevoerd. Is het mogelijk om een macro zodanig te definieren dat hij alleen in 1 bepaalde werkmap wordt gevonden c.q. uitgevoerd? Dit om fouten te voorkomen (het is een systeempje voor iemand zonder achtergrondkennis; ik wil het zogenaamd 'idiot proof' maken).

Alvast bedankt voor de reactie..
 
Zet je module in een private sub.

Kijk in de vba helpfiles:
When used in host applications that allow references across multiple projects, Option Private Module prevents a module’s contents from being referenced outside its project. In host applications that don’t permit such references, for example, standalone versions of Visual Basic, Option Private has no effect.

Groet,
Ferenc
 
Aan Ferenc

Dag Ferenc.

Bedankt zover.
Ik weet niet alleen niet hoe ik een module in een Private Sub moet plaatsen.

Groeten, Jan Keuzenkamp
 
Ga in VBA naar je macro's. In plaats van

Code:
Sub jouwmacro()

doe je

Code:
Private Sub jouwmacro()
 
Jan,

Werkt het? Ja! zou je dan de vraag op opgelost willen plaatsen. Behouden we het overzicht.

Bedankt,
Ferenc
 
Lukt nog niet

Hoi.

Als ik 'private sub' codeer wordt de macro helemaal niet meer gevonden als ik hem probeer uit te voeren.
Ook onder "macro's" is niets meer te zien.

Groeten, Jan.
 
je moet een knop aanmaken mbv werkset besturingselementen.

1 zorg dat je de toolbar "werkset besturingsslementen" op je pagina hebt.
2 Klik het lineaaltje aan (ontwerpmodus) hiermee kan je deze soort knoppen veranderen. als deze uit staat kan je de knop niet eens selecteren :)
3 Klik nu op opdrachtknop en maka je button.
4 dubbel klik op deze knop
5 plaats nu je code.
6 klik weer op lineaaltje.

En testen.

succes.

Groet,
Ferenc
 
Dag Ferenc.

Ik heb geen flauw idee waar ik de toolbar die je noemt vandaan moet halen. Voor de goede orde:
ik werk met excel 97. Praat jij misschien over iets dat in nieuwere versies van excel beschikbaar is?

Groeten, Jan.
 
Deze staat onder:
beeld / werkbalken / werksetbesturingselementen.

weet zeker dat deze erin moet zitten.

Groet,
Ferenc

ps
werk zelf met 2003 en 2000
 
Dag Ferenc.

Ik kom steeds verder. Ik heb de toolbar in beeld staan. Alleen de eerste drie synmbolen (Ontwerpmodus, Eigenschappen en Programmacode weergeven) kunnen worden aangeklikt. De rest waaronder de Opdrachtknop blijft bleek.

Ik heb nog een vraag. Als het excel gaat wordt er vaak over draaitabellen gesproken. Ik heb echter nergens kunnen vinden ewat een draaitabel eigenlijk is.

Ik hoop dat ik niet vervelend wordt.

Groeten, Jan.
 
Je zal niet snel vervelend worden. We zijn allemaal zo begonnen (in ieder geval het merendeel van ons:))

Volgens mij heb jij je blad beveiligd.
Haal deze er eerst vanaf dan zul je zien dat je de knoppen kan gaan gebruiken.

En voor de draaitabellen:
hier ben ik zelf nog nooit aan begonnen dus kan je op dit vlak weinig vertellen.
In het engels heten deze pivot tables.
Kijk maar is bij de onderste link, die ik je gestuurt heb, onder de P.

Succes.

Groet,
Ferenc
 
Ik heb een button op het werkblad staan. Als ik er op dubbelklik kom ik in 'object opmaken'. Daarin kan ik alleen het formaat en de kleur van de button aanpassen.
Klikken op 'beginwaarden' heeft geen effect. Moet ik soms juist daar zijn om coding toe te voegen en om eventueel de button een andere naam te geven?

Groeten, Jan.
 
rechtermuisknop op de butten en dan kiezen voor programmacode weergeven.
Plak hier je private code.

Groet,
Ferenc
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan