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

Worksheet_BeforeRightClick

Status
Niet open voor verdere reacties.

blikbanaan

Gebruiker
Lid geworden
16 feb 2012
Berichten
66
Mijne heren is het mogelijk om het menu(rechter muisklik op de tab) van een werkblad uit te schakelen.
 
Dan kan zo:
Code:
Private Sub Worksheet_BeforeRightClick(ByVal Target As Range, Cancel As Boolean)
    Cancel = True
End Sub
 
Klopt dat wist ik, maar ik bedoel het rechter menu in de tab, zie foto bijlage
 

Bijlagen

  • menuTAB.GIF
    menuTAB.GIF
    152,3 KB · Weergaven: 57
Dus je hebt het al getest en niet in orde bevonden?
 
Dat is juist, het werkt in het blad zelf, maar dat menu bedoelde ik niet, als je naar het naamtab gaat zit zie foto ook een rechtermuisknop menutje.
 
Ok, die bedoeling was me niet duidelijk.
Zet dan dit in Workbook_Open
Code:
Application.CommandBars("Ply").Enabled = False
 
Dat doe je zo:
Code:
Private Sub Workbook_BeforeClose(Cancel As Boolean)
    Application.CommandBars("Ply").Enabled = True
End Sub

Code:
Private Sub Workbook_Open()
    Application.CommandBars("Ply").Enabled = False
End Sub
 
Nee hoor werkt nooit perfect. Met elk gerommel aan de standaardinstellingen loop je het risico dat bij het niet correct afsluiten van het bestand je ineens zonder de rechtermuisknop functies zit. Wordt geen enkele gebruiker blij van.;)
 
Klopt wel wat je zegt, het liefste had ik maar een van de menuregels uitgezet, maar dat lukt schijnbaar niet in office 365
 
En als de gebruiker bij het sluiten het "Opslaan" venster krijgt en op annuleren drukt, dan is dat rechts-klik menu er weer...
 
Klopt wel wat je zegt, het liefste had ik maar een van de menuregels uitgezet, maar dat lukt schijnbaar niet in office 365

Code:
Private Sub Workbook_Open()
  Application.CommandBars("ply").Controls("Verwijderen").Delete   'Of  Application.CommandBars("Ply").controls(2).delete
End Sub
Code:
Private Sub Workbook_BeforeClose(Cancel As Boolean)
    Application.CommandBars("Ply").reset
End Sub
 
Beide codes in Thisworkbook plakken.
Bestand opslaan met macro's.
Bestand sluiten en weer openen.
 
Juist daar had ik al ze in gezet en ook beide optie's getest werkt helaas niet.
Private Sub Workbook_Open()
Application.CommandBars("ply").Controls("Verwijderen").Delete 'Of Application.CommandBars("Ply").controls(2).delete
End Sub
 
Op welke plek in het rijtje staat "verwijderen"?
Misschien verwijderd het nu een ander zonder dat jij het merkt.

Denk erom dat de controls wel weer worden gereset mocht je iets wijzigen.
 
Deze werken wel, maar dan is het hele menu weg, apart uitschakelen lukt me gewoon niet macro loopt gewoon goed door maar er gebeurt niets (bij maken van een extra menuregel is ook geen probleem)

Private Sub Workbook_Open()

Application.CommandBars(" Cell").Enabled = False

Application.CommandBars("Ply").Enabled = False

End Sub

Private Sub Workbook_BeforeClose(Cancel As Boolean)

Application.CommandBars("Cell").Enabled = True

Application.CommandBars("Ply").Enabled = True
End Sub
 
Maar die Delete menu optie zit niet in het rechts-klik menu van de tabbladen ("Ply"), maar in de rechts-klik menu's van rijen/kolommen/cellen/tabellen met deze nummers (Excel 365/2016):

38 Cell
39 Column
40 Row
41 Cell
42 Column
43 Row
74 List Range Popup
75 List Range Layout Popup
76 XML Range Popup
77 List Range Layout Popup

Bovendien kan je middels VBA de laatste 4 menu's niet aanpassen, dat moet via RibbonX code.
Geloof me, het is veel eenvoudiger om het werkblad te beveiligen.
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan