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

opslaan als

Status
Niet open voor verdere reacties.

westra77

Gebruiker
Lid geworden
2 mrt 2007
Berichten
149
in vervolg op mijn vorige gestarte discussie de volgende vraag:
ik heb een beveiliging ingevoerd waardoor de gebruiker er op wordt geattendeerd, wanneer hij kiest voor macro's uitschakelen.
wanneer de gebruiker kiest voor macro's inschakelen worden de juiste werkbladen getoont.
tot zover loopt alles naar wens.
bij het sluiten van het document wil ik graag dat blad 3 (waar de beveiliging waarschuwing is vermeld) niet meer in zicht komt.
en daarnaast dat de appication save as verschijnt in het beeldscherm.
met onderstaande code lukt dit gedeeltelijk. Echter de messagebox verschijnt na annuleren of opslaan als nogmaals. dit is niet de bedoeling. daarnaast wil ik dat bij het scherm opslaan als, de naam "mengopdracht" met datum (=vandaag) verschijnt.
wie kan mij helpen
Code:
Private Sub Workbook_BeforeClose(Cancel As Boolean)
    Application.ScreenUpdating = False
    Dim Save As Boolean
    Save = True
    
    If ThisWorkbook.Saved = False Then
        a = MsgBox("Wilt u de wijzigingen opslaan?", vbYesNoCancel, "gegevens opslaan?")
        If a = vbCancel Then Cancel = True
        If a = vbNo Then Save = False
    End If
    
    If Save = False Then
        ThisWorkbook.Saved = True
    End If
    
    If Cancel = False And Save = True Then

   
   
   
 Blad3.Visible = xlSheetVisible
  Blad3.Activate
  HideAll

Application.GetSaveAsFilename
 ActiveWorkbook.Close Savechanges:=False
End If

  End Sub
  
Private Sub Workbook_Open()
ActiveWindow.DisplayWorkbookTabs = False
    
    UnHideAll
    Blad1.Activate
      
  Blad3.Visible = xlSheetHidden
   
    
End Sub

Private Sub HideAll()
    'Blad3.Visible = xlSheetVisible
    Blad2.Visible = xlSheetHidden
    Blad1.Visible = xlSheetHidden
    
       
       
    
End Sub
Private Sub UnHideAll()
    
    'Blad3.Visible = xlSheetHidden
    Blad1.Visible = xlSheetVisible
    Blad2.Visible = xlSheetVisible
    
         Application.ScreenUpdating = True
 
    
End Sub
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan