Help!

PC-Problemen?
De vrijwilligers van Oplossing.be zoeken gratis met u mee!

Hulp bij posten

Recente topics

Auteur Topic: Cellen beveiligen via VBA met behoud macro's  (gelezen 96587 keer)

0 leden en 1 gast bekijken dit topic.

Offline nielsdek

  • Nieuw lid
  • Berichten: 5
  • Geslacht: Man
  • Hey, ik ben nieuw hier !
Cellen beveiligen via VBA met behoud macro's
« Gepost op: 24 juli 2024, 01:31:01 »
Goedemorgen,

Ik wil graag een Excel document beveiligen, maar als ik dat nu doe werken de macro's niet meer.
Ik lees op internet al erg veel over VBA, maar ik ben er niet in thuis.
In de bijlage heb ik het document gezet. Hierin wil ik dat op het tabblad 'voorblad' niks gewijzigd kan worden. In tabblad 2 vul ik echter wel de naam in wat wel weer op tabblad 'voorblad' moet mee-springen door  de = functie.
Om nu makkelijk te bewerken heb ik de tabbladen zichtbaar, maar normaliter hou ik deze verborgen en switch ik tussen de tabbladen door hyperlinks. Ik wil ook dat deze hyperlinks niet te verwijderen zijn.
Zou het iemand lukken hiervoor een code te schrijven?


Offline Della Jordan

  • Volledig lid
  • **
  • Berichten: 239
  • Geslacht: Vrouw
Re: Cellen beveiligen via VBA met behoud macro's
« Reactie #1 Gepost op: 24 juli 2024, 13:39:45 »
Hoi Niels,
Welkom op Oplossing. :)
Jou macro's zijn duidelijk opgenomen met de macro recorder, op zichzelf is daar niets mee maar daar staan er altijd overbodige zaken in.

Om macro's te laten werken
Je hebt alleen alleen volgende twee lijntjes nodig in je macro's
Bovenaan:
Sheets("Voorblad OBS").Unprotect Password:="Niels"Onderaan:
Sheets("Voorblad OBS").Protect Password:="Niels"Zoals je kan zien is het wachtwoord Niels maar dat kan je natuurlijk veranderen.

Ik heb je macro's van iso1 herleid tot het absolute minimum. (als voorbeeld)
Sub Iso1aan()
Sheets("Voorblad OBS").Unprotect Password:="Niels"
    Range("F1:F3").Interior.ColorIndex = 3
    Range("E1:E3").Interior.ColorIndex = xlNone
Sheets("Voorblad OBS").Range("B9:C9").Interior.ColorIndex = 3
Sheets("Voorblad OBS").Protect Password:="Niels"
End Sub
Sub iso1uit()
Sheets("Voorblad OBS").Unprotect Password:="Niels"
    Range("E1:E3").Interior.ColorIndex = 3
    Range("F1:F3").Interior.ColorIndex = xlNone
Sheets("Voorblad OBS").Range("B9:C9").Interior.ColorIndex = 43
Sheets("Voorblad OBS").Protect Password:="Niels"
End Sub
Zie bijlage.
Groetjes,Della

Offline Della Jordan

  • Volledig lid
  • **
  • Berichten: 239
  • Geslacht: Vrouw
Re: Cellen beveiligen via VBA met behoud macro's
« Reactie #2 Gepost op: 24 juli 2024, 14:03:45 »
Voor je tweede vraag, ik zou geen hyperlinks gebruiken.
Test eens de knop snelle navigatie, verbergt trouwens ook de tabbladen.
Zie bijlage.
Groetjes,Della

Offline nielsdek

  • Nieuw lid
  • Berichten: 5
  • Geslacht: Man
  • Hey, ik ben nieuw hier !
Re: Cellen beveiligen via VBA met behoud macro's
« Reactie #3 Gepost op: 24 juli 2024, 15:03:23 »
Della Jordan, hiermee kom ik echt al super ver!!
De hyperlinks wil ik wel graag blijven gebruiken, omdat de collega's al gewent zijn aan deze werkwijze. De tabbladen maak ik in de definitieve versie weer onzichtbaar via bestand> opties> geavanceerd> bladtabs weergeven.
Is het nog mogelijk dat in het tabblad 'voorblad' de hyperlink in cel B9 blijft werken? ik zie nu dat de hyperlink er nog wel instaat maar ik kan hier niet op klikken.
Is het daarnaast ook nog eventueel mogelijk dat in het tabblad 'iso1' cel A1 tm C2 beveiligd wordt zodat deze cel niet te selecteren is, en hier alleen de hyperlink te gebruiken is?
Met vriendelijke groet,

Niels

Offline Della Jordan

  • Volledig lid
  • **
  • Berichten: 239
  • Geslacht: Vrouw
Re: Cellen beveiligen via VBA met behoud macro's
« Reactie #4 Gepost op: 24 juli 2024, 15:06:46 »
Het kan nog korter.
Sub Iso1aan()
Sheets("Voorblad OBS").Unprotect Password:="Niels"
    [F1:F3].Interior.ColorIndex = 3
    [E1:E3].Interior.ColorIndex = xlNone
Sheets("Voorblad OBS").[B9:C9].Interior.ColorIndex = 3
Sheets("Voorblad OBS").Protect Password:="Niels"
End Sub
Sub iso1uit()
Sheets("Voorblad OBS").Unprotect Password:="Niels"
    [E1:E3].Interior.ColorIndex = 3
    [F1:F3].Interior.ColorIndex = xlNone
Sheets("Voorblad OBS").[B9:C9].Interior.ColorIndex = 43
Sheets("Voorblad OBS").Protect Password:="Niels"
End Sub
Groetjes,Della

Offline Della Jordan

  • Volledig lid
  • **
  • Berichten: 239
  • Geslacht: Vrouw
Re: Cellen beveiligen via VBA met behoud macro's
« Reactie #5 Gepost op: 24 juli 2024, 16:10:35 »
Citaat
De hyperlinks wil ik wel graag blijven gebruiken, omdat de collega's al gewent zijn aan deze werkwijze.
Ik zou zeggen dat je je collega's moet heropvoeden.
Je vraag is geen enkel probleem om de hyperlinks te kunnen gebruiken maar dan kunnen je geachte collega's direct deze cellen weer naar de boem helpen, er staat nu eenmaal een formule in deze cellen.
Groetjes,Della

 


www.combell.com