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

Volgorde bediening van knoppen

Status
Niet open voor verdere reacties.

ZIPPO_2

Gebruiker
Lid geworden
21 jun 2006
Berichten
88
Hallo iedereen

Ik heb op een blad 2 knoppen staan 1 om een kopie te maken van het ingevulde blad en 1 om nadien het ingevulde blad te wissen( dit werkt trouwens perfekt)
Wat ik nu wil bekomen is dat ik de knop Wissen pas kan bedienen nadat de Kopie effectief gemaakt is.

Een bijkomend vraagje Kan er iemand mij het verschil uitleggen tussen een Formulierknop en een ActiveX knop

Grtjs
Ron
 
Je kan in de eerste code ook je tweede code inzetten.
stel je eerste code heet 'sub copietje', je tweede heet 'sub wissen'.

Bv.
sub copietje()
-----kopieer code-----
wissen
end sub

Zo heb je maar één knop nodig, en kan er niets verkeerd gaan.

De activeX-knoppen kun je makkelijker beinvloeden door de eigenschappen.
De formulierknoppen hebben een groot nadeel vind ik.
Als je iemand het bestand toezend, moet die vaak eerst het bestand opslaan, daarna de code weer aan de knop hangen, en weer opslaan.
 
Brasschaat, da's niet ver bij mij vandaan :)
Een formulierknop kan je een macro aan toewijzen en gedaan. Een ActiveX-knop bevat verschillende eigenschappen die afzonderlijk aangepast of gebruikt kunnen worden. bv zichtbaarheid, mee afdrukken, kleur knop, kleur tekst, enz....
Voor jouw probleem kan je dan de eigenschap Visible instellen van je 2de knop (wissen) bij de macro v/d eerste knop (Kopie)
 
Laatst bewerkt:
Alvast bedankt voor de snelle reacties
Ik heb wat aan het puzzelen geweest maar ik krijg het blijkbaar niet voor mekaar.
Bijgevoegd de 2 codes.
Als ik beide codes vermeng moet ik dan nog iets weglaten of bijvoegen
Code:
Sub KOPIE()
ActiveWorkbook.Unprotect Password:="X"
If MsgBox("MAAND VOLLEDIG INGEVULD? KLIK DAN JA!", vbYesNo + vbExclamation, "MAAND OPSLAAN") = vbYes Then
Sheets("MAAND").Cells.Copy
  ActiveWorkbook.Sheets.Add After:=Sheets(Sheets.Count)
    With ActiveSheet
       .Cells.PasteSpecial Paste:=xlPasteFormats
       .Cells.PasteSpecial Paste:=xlPasteValuesAndNumberFormats
       .Name = Sheets("MAAND").Range("G3")
               Application.Goto .Range("A1")
    ActiveWindow.DisplayGridlines = False
  End With
 Application.CutCopyMode = False
 End If
ActiveWorkbook.Protect Password:=""

End Sub


Code:
Sub MaandWissen()
ActiveSheet.Unprotect Password:="X"
If MsgBox("ALLE DATA WEGGESCHREVEN? KLIK JA!", vbYesNo + vbExclamation, "MAAND WISSEN") = vbYes Then
Application.EnableEvents = False
With ActiveSheet.Range("G3:I4,E7:J27,M7: AF27 ")
.ClearContents
.Font.ColorIndex = 1
.Interior.ColorIndex = 0
End With
Application.EnableEvents = True
Range("G3").Select
End If
ActiveSheet.Protect Password:="X"
End Sub
 
Zoals ik dan voorstelde; Met één knop → Sub KOPIE()
Test het in een testbestandje.
Code:
Sub KOPIE()
ActiveWorkbook.Unprotect Password:="X"
If MsgBox("MAAND VOLLEDIG INGEVULD? KLIK DAN JA!", vbYesNo + vbExclamation, "MAAND OPSLAAN") = vbYes Then
Sheets("MAAND").Cells.Copy
  ActiveWorkbook.Sheets.Add After:=Sheets(Sheets.Count)
    With ActiveSheet
       .Cells.PasteSpecial Paste:=xlPasteFormats
       .Cells.PasteSpecial Paste:=xlPasteValuesAndNumberFormats
       .Name = Sheets("MAAND").Range("G3")
               Application.Goto .Range("A1")
    ActiveWindow.DisplayGridlines = False
  End With
 ActiveWorkbook.Protect Password:=""
   MaandWissen
 End If
End Sub

Code:
Sub MaandWissen()
With Sheets("MAAND")
      .Unprotect Password:="X"
     With .Range("G3:I4,E7:J27,M7:AF27")
      .ClearContents
      .Font.ColorIndex = 1
      .Interior.ColorIndex = xlNone
     End With
    Application.Goto .Range("G3")
      .Protect Password:="X"
  End With
End Sub
 
Dit werkt perfekt. Bedankt voor de moeite
Grtz
Ron
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan