macro kolommen verbergen werkt niet ?

Status
Niet open voor verdere reacties.

tombeerke

Gebruiker
Lid geworden
8 jan 2017
Berichten
280
Hallo,

In bijlage een voorbeeldje van mijn probleem.
Ik heb een factuurblad aangemaakt, en wil nu op ditzelfde blad werken met "koppelverkoop"
nu we dit niet altijd nodig hebben, wil ik via 2 knoppen "koppelverkoop" AAN - UIT, kolommen tonen of verbergen

De macro voor AAN werkt perfect, echter wanneer ik UIT (in feite worden hier gewoon 3 kolommen verborgen) dan doet de macro raar en verbergt hij ook andere kolommen ?
Wie kan me helpen ?

Bekijk bijlage testkoppelverkoop.rar
 
Code:
Sub KortingscodeAan()
Columns("C:C").EntireColumn.Hidden = False
Columns("H:I").EntireColumn.Hidden = False
End Sub
Code:
Sub KortingscodeWeg()
Columns("C:C").EntireColumn.Hidden = True
Columns("H:I").EntireColumn.Hidden = True
End Sub
 
Kolommen verbergen doe je zo.
Met een wisselknop (1 knop is dan voldoende).

Code:
sub aan_uit()
columns("a:h").hidden= not columns("a:h").hidden
end sub

edit: @dotchie was al eerder
 
Mijn bijdrage:
Code:
Sub KortingscodeAan()
    Range("C:C, H:H, I:I").EntireColumn.Hidden = False
    Range("D13").Select
End Sub

Sub KortingscodeWeg()
    Range("C:C, H:H, I:I").EntireColumn.Hidden = True
    Range("D13").Select
End Sub

Maar ik zou er ook een ToggleButton (Wisselknop) voor gebruiken:
Code:
Private Sub ToggleButton1_Click()
    Range("C:C, H:H, I:I").EntireColumn.Hidden = ToggleButton1
    Range("D13").Select
End Sub
 
Laatst bewerkt:
Onder een knop.
Code:
 Range("C1,H1,I1").EntireColumn.Hidden = Not Range("C1,H1,I1").EntireColumn.Hidden
 
@ allemaal

Super ! met de togglebutton werkt dat PRIMA :thumb::thumb::thumb::thumb:

Weer iets bijgeleerd, super bedankt voor de vele antwoorden

Aan iedereen een fijne zonnige zondag gewenst :thumb:
 
Je kan de tekst op de knop daar ook op aanpassen:
Code:
Private Sub ToggleButton1_Click()
    ToggleButton1.Caption = IIf(ToggleButton1, "Korting tonen", "Korting verbergen")
    Range("C:C, H:H, I:I").EntireColumn.Hidden = ToggleButton1
    Range("D13").Select
End Sub

Gebruik voor die knop tevens deze kenmerken:
ToggleButton.jpg
 
Laatst bewerkt:
Een heel leuke extraatje :d:d:d

Nog een vraag:
Als korting weg (dus de kolommen verborgen zijn) kan dan kolom A en J automatisch de kolombreedte aangepast worden van 25 naar 50, en natuurlijk omgekeerd bij zichtbaar van 50 naar 25 ?

is gewoon kwestie van mooiere lay-out

Tom
 
Ja, dat kan met:
Code:
Range("A:A, J:J").ColumnWidth = 25

Probeer deze maar eens:
Code:
Private Sub ToggleButton1_Click()
    Application.ScreenUpdating = False
    ToggleButton1.Caption = IIf(ToggleButton1, "Korting tonen", "Korting verbergen")
    Range("A:A, J:J").ColumnWidth = IIf(ToggleButton1, 50, 25)
    Range("C:C, H:H, I:I").EntireColumn.Hidden = ToggleButton1
    Range("D13").Select
    Application.ScreenUpdating = True
End Sub
 
Laatst bewerkt:
werkt PRIMA :thumb:

uit het verleden heb ik geleerd, dat soms de codes raar doen bij beveiligen van het blad.

Omdat we werken met een barcodescanner, zijn alle cellen beveiligd, behalve range D13:G37 (dit omdat dan de barcodescanner, na elke scan correct verspringt naar de volgende regel)
Dus we werken steeds met beveiligd blad ? Moet hier rekening mee gehouden worden voor "wisselknop" ?

Tom
 
Ik verwacht het niet, maar dat kan je zelf het beste testen.
 
Oke, super, ik laat nog bericht

Nu wil ik via een 2de wisselknop, de percentage korting eventueel laten aanpassen !

Als ik op wisselknop 1 druk zijn de % waarden VAST 5%-10%-15%-20%-enz
Wat ik nu wil bekomen met wisselknop 2 is
-De knop mag enkel "geactiveerd worden" als wisselknop 1 op "korting tonen" staat. (dus bij korting verbergen mag wisselknop 2, niet kunnen gebruikt worden)
-We werken in een beveiligd blad
-als nu de 2de wisselknop "% aanpassen" activeert, wil ik van range c13:c37 de mogelijkheid dat de percentages manueel worden aangepast ?

Ik had iets geprobeerd maar kom er niet uit:rolleyes:

Code:
Private Sub ToggleButton2_Click()
Application.ScreenUpdating = False
    ToggleButton2.Caption = IIf(ToggleButton2, "% aanpassen", "% vast")
    ActiveSheet.Unprotect
    
    ActiveSheet.Protect DrawingObjects:=False, Contents:=True, Scenarios:= _
        False
    Range("D13").Select
    Application.ScreenUpdating = True
End Sub
 
Was probleempje, met beveiligd blad, maar heb ik opgelost gekregen, en werkt prima

Code:
Private Sub ToggleButton1_Click()
 Application.ScreenUpdating = False
 ActiveSheet.Unprotect
    ToggleButton1.Caption = IIf(ToggleButton1, "Korting tonen", "Korting verbergen")
    Range("A:A, J:J").ColumnWidth = IIf(ToggleButton1, 50, 25)
    Range("C:C, H:H, I:I").EntireColumn.Hidden = ToggleButton1
    Range("D13").Select
    ActiveSheet.Protect DrawingObjects:=False, Contents:=True, Scenarios:= _
        False
    Application.ScreenUpdating = True
    
End Sub
 
Kijk eens naar de eigenschap 'enabled' voor je tweede knop.
 
Kijk eens naar de eigenschap 'enabled' voor je tweede knop.

ja, daar kan ik de knop op true of false plaatsen.

Maar wat ik wil bekomen is in feite met een "wisselknop", het blad dat beveiligd is uit te schakelen, zodat ik manueel de % kan aanpassen, en als ik dan terug op de wisselknop klik, het blad terug in beveiligde modus gaat (voor mijn barcodescanner)
 
unprotect en protect?
 
Dat lukt niet?
 
Dat lukt niet?

dus dat werkt niet met een "wisselknop" ?

begrijp je mijn issue ?

Bij koppelverkoop zijn de % steeds vast per aantal aankopen, hoe meer aankopen, hoe meer % (tot daar werkt alles prima)

Uit ervaring weet ik nu, dat we regelmatig eens een uitzonderlijke korting geven op een artikel, ik dacht dus op dat moment via de wisselknop de "korting" zichtbaar te maken, en dan met een andere wisselknop de bladbeveiliging uit te schakelen, dan manueel in kolom C het percentage in te vullen, en dan terug het blad te beveiligen

Heb je een idee, hoe we dit op een andere manier kunnen bekomen ?

groetjes

tom
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan