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

Kolom verbergen als

Status
Niet open voor verdere reacties.

Kacik

Gebruiker
Lid geworden
20 dec 2013
Berichten
21
Goedemiddag iedereen,

Ik denk wat ik wil is het wel mogelijk, maar ik komt niet uit.
Als ik druk datum <22-7-2014> in cel C2 zou ik graag willen zien allen kolom met Dinsdag. En de rest moet verbergen zijn. Elke help is welkom.
Alvast fijne dagje verder.Bekijk bijlage test.xlsm
 
Met zoiets als onderstaande.
Code:
Private Sub Worksheet_Change(ByVal Target As Range)
If Not Intersect(Target, Range("C2")) Is Nothing Then
 If Target.Value = DateValue("22-07-2014") Then
   Union(Columns(5).Resize(, 5), Columns(15).Resize(, 25)).EntireColumn.Hidden = True
  End If
End If
End Sub
 
of zo iets:
Code:
Sub VerbergKolommen(Dat As Date)
    Dim HeleGebied As Range
    Set HeleGebied = Columns("E:AM")
    HeleGebied.Hidden = True
    HeleGebied.Columns((DatePart("w", Dat, vbMonday) - 1) * 5 + 1).Resize(, 5).Hidden = False
End Sub
 
Die is leuk Sylvester. :thumb:
 
Goedemorgen,

De eerste code werk goed. Precies wat ik heb gevraagd. En de tweede weet ik niet waarom? maar nee. Eigenlijk is de bedoeling:
* als iemand druk op datum(variabel), VBA moet zelf bepalen welke dag hoort erbij. En de rest moet verbergen.
dus 22-7-2014= dinsdag, 30-7-2014= woensdag,

is dit wel te doen dan?
 
In werkbladmodule.
Code:
Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
    If Not Intersect(Target, Range("C2")) Is Nothing Then
        Dim HeleGebied As Range
        Set HeleGebied = Columns("E:AM")
        HeleGebied.Hidden = True
        HeleGebied.Columns((DatePart("w", Target, vbMonday) - 1) * 5 + 1).Resize(, 5).Hidden = False
    End If
    Cancel = True
End Sub
Door te dubbelklikken op C2 activeer je de datumkeuze.
 
Goedemorgen Rudi,

Werkt perfect naar de wens. Kunnen wij nog klein aanpassing maken? ik heb nu twee tabelen. Efect moet precies zelfde zijn. maar ik moet wel allebeij zin.
Zou dat lukken?
Bekijk bijlage test.xlsm
 
Code:
Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
    If Not Intersect(Target, Range("C2")) Is Nothing Then
        Dim HeleGebied As Range, TweedeGebied As Range
        Set HeleGebied = Columns("E:AM"): Set TweedeGebied = Columns("AS:CA")
        HeleGebied.Hidden = True: TweedeGebied.Hidden = True
        HeleGebied.Columns((DatePart("w", Target, vbMonday) - 1) * 5 + 1).Resize(, 5).Hidden = False
        TweedeGebied.Columns((DatePart("w", Target, vbMonday) - 1) * 5 + 1).Resize(, 5).Hidden = False
    End If
    Cancel = True
End Sub
 
Ja... dat is hem.... werkt prima. Tot nu toe ben ik geholpen. Werk ik uit mij bestandje. later kan nog kleine aanpasingen komen.
Hartelijk bedankt.
 
Goedemiddag iedereen,

Kunnen wij hier plak van dubble klik, enter toets gebraken?
 
verwijder die vorige en zet er dit
Code:
Private Sub Worksheet_Change(ByVal Target As Range)
If Not Intersect(Target, Range("C2")) Is Nothing Then
        Dim HeleGebied As Range, TweedeGebied As Range
        Set HeleGebied = Columns("E:AM"): Set TweedeGebied = Columns("AS:CA")
        HeleGebied.Hidden = True: TweedeGebied.Hidden = True
        HeleGebied.Columns((DatePart("w", Target, vbMonday) - 1) * 5 + 1).Resize(, 5).Hidden = False
        TweedeGebied.Columns((DatePart("w", Target, vbMonday) - 1) * 5 + 1).Resize(, 5).Hidden = False
    End If
End Sub
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan