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

werkblad beveiligen

  • Onderwerp starter Onderwerp starter mtb
  • Startdatum Startdatum
Status
Niet open voor verdere reacties.

mtb

Gebruiker
Lid geworden
15 feb 2005
Berichten
314
heluuup

in een exel bestand heb ik 2 werkbladen, een werkblad waar alle bestanden en knoppen in staan om de macro's te bedienen, en het andere werkblad als hulpblad waar die macro's steeds naar toe verwijzen.

probleemstelling:
als ik het hulpblad verberg dan werken de macro's niet meer op het andere werkblad (geeft aan dat die de macro's niet kan vinden), hoe los ik dit op want ik wil wel dat het hulpblad verborgen blijft.
 
Dit heeft waarschijnlijk te maken met het door de macro selecteren van cellen in het verborgen werkblad.

Als je bijvoorbeeld iets tegenkomt wat lijkt op:
Code:
Sheets("Blad1").Select
Range("A1").Select
Selection.Copy
Moet je dit vervangen door:
Code:
Sheets("Blad1").Range("A1").Copy
 
vergeten te vermelden dat op het hulpblad ook macro's staan die op verwerkt zijn in de macro op het werkblad, hierdoor staan er wel veel verwijzingen zoals jij die beschrijft in de macro op het werkblad, betekent dat ik dan alle

Sheets("Blad1").Select
Range("A1").Select
Selection.Copy

moet vervangen door

Sheets("Blad1").Range("A1").Copy

zoals jij aangaf in jouw oplossing?

is er geen makkelijkere methode???
 
Je zou iedere keer voordat je de code uitvoert het blad zichtbaar kunnen maken en nadat je de macro code hebt uitgevoerd het blad weer verbergen.

Code:
'Start
Sheets("blad1").Visible = xlVisible

'
' Hier jouw code
'

'Einde
Sheets("blad1").Visible = xlHidden 'of xlVeryHidden

Als je helemaal wilt dat het blad onzichtbaar blijft en je verder ook geen acties van de macro ziet kun je nog instellen: Application.ScreenUpdating = False en dan bij het einde Application.ScreenUpdating = True.
 
bedoel je dat de macro moet beginnen en eindigen met een van de twee door jouw gegeven oplossingen, dus voordat die met de daadwerkelijke uitvoering van de macro begint!
 
Yup, vlak na Sub ... de "Start" code inplakken en vlak voor End Sub de "Einde" code invoegen, natuurlijk wel met de naam van jouw werkblad in plaats van Blad1.
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan