Wissen tabbladen via VBA

Status
Niet open voor verdere reacties.

JJZijlstra

Gebruiker
Lid geworden
26 nov 2013
Berichten
299
Beste lezer(s),

In dit bestand heb ik de vrijheid om "Blad1" t/m "Blad5" of andere tabbladen te wissen of juist ergens middenin bijv. een tabblad toe tevoegen. Dit liefst tussen "OvzTab" en "Blad5".
Kortom: alle vrijheid heb ik hier met deze tabbladen, ook met de gegevensverwerking .
Nu het belangrijkste: Het laatste tabblad "OvzTab" mag beslist niet gewist worden. - Dit is het overzichtsblad van de resultaten van alle eerdere tabbladen.
In excel is dit niet mogelijk vlgs. mij.

Is hier een speciale code voor in VBA en zo ja, hoe luidt deze?

Groet,
Jo
 

Bijlagen

Hiermee voorkom je dat het werkblad kan worden verwijderd.
Code:
Private Sub Worksheet_Activate()
    MsgBox "Dit werkblad mag niet worden verwijderd!"
    ThisWorkbook.Protect "yourpassword"
End Sub

Private Sub Worksheet_Deactivate()
    ThisWorkbook.Unprotect "yourpassword"
End Sub
Je kan dan overigens niet zo heel veel doen op dat blad; als je dat wél wilt, moet je de beveiliging ook uit kunnen zetten. Dat kan uiteraard als je de code een beetje aanpast ook wel geregeld worden.
 
Dank je OctaFish, maar ondanks je antwoord en de beveiliging met password die ik gebruik, kan ik nog steeds het tabblad verwijderen.
Dat zou niet moeten.

Groet,
Jo
 
Deze code beveiligt het werkboek, en dan kan je geen blad verwijderen. Bij mij werkt het althans zo.
 
Selecteer maar eens een paar bladen incl. je beveiligd blad met Shift @OctaFish.
Geen probleem om ze te verwijderen.
 
Ik kan nog steeds het overzichtsblad wissen wat niet de bedoeling is.


Groet,
Jo
 
Dan kun je beter een ander programma gebruiken dan Excel.
 
Beste helpers en snb,

Hartelijk dank voor de moeite de bijdragen die jullie geleverd hebben.
Ik zal kijken wat verder nog de mogelijkheden zijn.

Groet,
Jo
 
Laatst bewerkt:
Geweldig Eric, dit werkt! ....:):):)

Hier ben ik blij mee.

Als ik de code bekijk beveilig je het hele werkboek i.p.v. sheet.
Ik begrijp niet helemaal de samenhang, wil je me dat eens verder uitleggen?

Bijzonder bedankt voor je hulp.


Groet,
jo
 
Laatst bewerkt:
Als ik de code bekijk beveilig je het hele werkboek i.p.v. sheet.
Ik begrijp niet helemaal de samenhang, wil je me dat eens verder uitleggen?
- Wanneer de structuur van het werkboek beveiligd is kun je (o.a.) geen werkbladen verwijderen
- Wanneer je een werkblad probeert te verwijderen zal eerst het SheetDeactivate event gestart worden
- In de code wordt dus wanneer een werkblad wordt gedeactiveerd, het SheetDeactivate event gestart en wordt er gekeken of dit werkblad de naam heeft welke niet verwijderd mag worden. Zo ja, :
- Dan wordt er (even) het werkboek / structuur beveiligd
- Dan wordt er middels een ontime procedure een macro gestart welke deze beveiliging er weer afhaalt. Door dit middels application.ontime te doen wordt het eraf halen van de beveiliging als het ware in een 'wachtrij' gezet en pas uitgevoerd wanneer het sheetdeactivate-event is beëindigd.
Op het moment dat dit sheetdeactivate-event is doorlopen en het werkblad verwijderd zou moeten worden kan dit niet want de structuur is beveiligd, dan druk je op ok en wordt de code uit de 'wachtrij' doorlopen en de beveiliging er weer afgehaald.
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan