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

kalender in userform, maar ook met weeknummers

Status
Niet open voor verdere reacties.

stevenVL

Gebruiker
Lid geworden
28 sep 2008
Berichten
7
ik had via dit forum al een voorbeeld gevonden om een kalender in een userform te kunnen maken, en zo toe te voegen in een cel (zie bijlage, opgemaakt door gebruiker SNB)

de eerste "Kopie van Kalender_snb_001-1.xlsb" vind ik kwa layout de mooiste, maar in de 2de "Kopie van __Userform kalender_snb.xlsb" zitten ook de weeknummers en aanduiding van de feestdagen in, wat wel handiger is.

Hoe krijg ik die weeknummers toegevoegd in het eerste bestand? het voordeel van het eerste bestand is ook dat het userform afsluit bij het aanklikken van een datum.

Dus eigenlijk zoek ik de oplossing om beide userforms te combineren. wie kan me helpen?

alvast bedankt
 

Bijlagen

Het verschil tussen de eerste en de tweede is dat de werkwijze van de tweede een veel kortere code nodig heeft. Ik zou dus altijd voor de tweede gaan. Het afsluiten van het formulier na klikken op een datum doe je met een kleine aanpassing in de Klassenmodule:
Code:
Private Sub v_label_click()
    If Application.StatusBar = " " Then
        UserForm1.T_01 = Format(v_label.Tag, "dd-mm-yyyy")
    Else
        ActiveCell = v_label.Tag
    End If
    v_label.ForeColor = vbRed
[B]    Unload Kalender
[/B]End Sub

Wil je de knoppen groter (want meer verschil is er niet) dan moet je de labels die voor de dagen worden gebruikt vergroten. Dat is een beetje puzzelen, maar daar kom je dan wel uit denk ik.
 
hey SNB, zo werkt het inderdaad.

Als ik nog een bijkomende vraag mag stellen, de locatie waar deze agenda opent, hangt mee vast aan de kolom als ik het goed begrijp, maar wanneer ik de excel op mijn secundaire beeldscherm plaats, opent hij de agenda-form toch op het primaire scherm. Hoe zou dit nog kunnen gewijzigd worden?

mvg
 
Probeer eens met:

Code:
    Left = ActiveWindow.ActiveCell.Offset(, 1).Left + 12
 
dat geeft geen verschil bij mij. de kalender blijft openen op het primaire beeldscherm.
 
Wat gebeurt er met:

Code:
Left = ActiveWindow.ActiveCell.Offset(, 1).Left + 1600
 
ik gebruik deze altijd om een userform in het midden van het scherm te krijgen waar excel open staat.


Code:
With Userform1
  .StartUpPosition = 0
  .Left = Application.Left + (0.5 * Application.Width) - (0.5 * .Width)
  .Top = Application.Top + (0.5 * Application.Height) - (0.5 * .Height)
  .Show
End With
 
@lam

Dat hoef je niet te programmeren, dat komt overeen met StartUpPosition = 2
 
@snb

ik heb net StartUpPosition = 2 geprobeerd.
En de ene keer komt het userform op mijn linkerscherm, de andere keer op het rechterscherm.
Het lijkt te maken te hebben waar ik mijn VBA editor scherm open heb staan (of heb afgesloten).

met mijn bovengenoemde code heb ik hier geen last van en komt het userform altijd midden op het scherm waar het actieve werkboek staat.
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan