Live-Forum - Die aktuellen Beiträge
Datum
Titel
29.03.2024 13:14:12
28.03.2024 21:12:36
28.03.2024 18:31:49
Anzeige
Archiv - Navigation
684to688
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
684to688
684to688
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

Datum in ComboBox?

Datum in ComboBox?
24.10.2005 07:38:24
Gnilk
Hallo Leute,
ich will eine ComboBox in einem VBA Tool verwenden. Ich wuerde gerne wissen, wie ich die ComboBox so programmiere, dass man die Daten des Kalenders auswaehlen kann. Dier Person die das Tool benutzt soll das Datum mit der ComboBox auswaehlen. Kann in der Zukunft liegen, heute sein oder aus der Vergangeheit.
Im Grunde geht es darum, dass jemand ein Datum in dem Tool auswaehlen muss. Falls jemand eine bessere Loesung als die ComboBox hat, soll er mir dies bitte schreiben.
Die Eingabemaske des Tools ist eine UserForm.
Vielen Dank im Voraus
Ciao
Gnilk

11
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Datum in ComboBox?
24.10.2005 07:58:22
Heiko S.
Moin Gnilk,
was hältst du von den Standard Mircosoft Kalender.
Toolbox, zusätzliche Steuerelemente und da nach Mircosoft Month View Control suchen.
In eine Userform einfügen und mit

Private Sub MonthView1_DateClick(ByVal DateClicked As Date)
MsgBox DateClicked
End Sub

auswerten.

Gruß Heiko

PS: Rückmeldung wäre nett !
AW: Datum in ComboBox?
24.10.2005 08:13:33
Gnilk
Hallo Heiko,
Idee finde ich sehr gut. Habe aber erst heute zum ersten Mal die UserForm verwendet. Also diesen grossen grauen Kasten, in den ich alles einbauen kann (TextBox, optionButton, etc.). Wie setze ich jetzt das MSDatum ein? Ich finde irgendwie die zusaetzlichen Steuerelemente nicht. In meiner UserForm wird naemlich nur eine Toolbox mit nur 13 verschiedenen Moeglichkeiten gezeigt.
Muss ich vielleicht ueber die obere Menuleiste gehen?
Ich hoffe Ich konnte dir mein Problem hahebringen.
ciao
Gnilk
Anzeige
AW: Datum in ComboBox?
24.10.2005 08:17:01
Heiko S.
Moin Gnilk,
wenn du die Toolbox aufgerufen hast, mit RECHTER MAUSTASTE draufklicken und dann siehst du ein kleines Kontextmenue in dem du zusätzliche Steuerelemente aufrufen kannst.

Gruß Heiko

PS: Rückmeldung wäre nett !
AW: Datum in ComboBox?
24.10.2005 08:24:06
Gnilk
Hallo Heiko,
vielen Dank, habe es gefunden. War wahrscheinlich nur zu doof. Leider kann ich es nicht anwenden, da mein MS Windows Paket nicht vollstaendig lizensiert wurde. Finde ich gut. Muss jetzt wohl mal zu unserem IT Experten.
Trotzdem vielen Dank. Scheint ja zu klappen, wenn man es installiert hat.
Ciao
Gnilk
AW: Datum in ComboBox?
24.10.2005 08:37:39
paula
hi Gnilk,


Private Sub UserForm_Initialize()
Dim x As Integer
For x = 1 to 12          'Monate eintragen
ComboBox1.AddItem Format(DateSerial(1950, x, 1), "MMMM")
Next x
For x = 1950 To 2200      'Jahre eintragen
ComboBox2.AddItem x
Next x
End Sub


Paula
Anzeige
AW: Datum in ComboBox?
24.10.2005 08:41:37
Gnilk
Hallo Paula,
vielen Dank fuer die Antwort. werde ich mal versuchen, wenn meine Lizens nicht funktioniert.
Ciao
Gnilk
AW: Selbstgebasteltes Kalendermodul...
24.10.2005 08:55:25
paula
hi,
du musst Access auf dein System haben, wenn nicht,
hier eine Datei mit einem selbstgebastelten Kalendermodul, der optisch fast
identisch ist ;-)

Die Datei https://www.herber.de/bbs/user/27760.xls wurde aus Datenschutzgründen gelöscht


paula
AW: Selbstgebasteltes Kalendermodul...
25.10.2005 02:05:45
Gnilk
Hallo Paula,
ich habe zwar den VBA Code aus Deinem Link. Aber irgendwie sind die Sheets leer. Wie bringe ich denn den Kalender zum laufen. Also den aus Deinem Link. Vielleich bin ich auch einfach nicht clever genug dafuer.
Vielen Dank
Gnilk
Anzeige
AW: Selbstgebasteltes Kalendermodul...
25.10.2005 23:08:11
paula
hi Gnilk
Rufe den VBA-Editor auf, dort im Projektfenster ist die Userform namens frmKalender
zu sehen, wenn du willst kannst du diese auch zu PERSONL.XLS rüberkopieren, so wird sie fester Bestandteil in deinem Excel.

1 Makro zum Aufrufen der Userform , Makro heißt "Kalender_Aufrufen"

1 Userform namens frmKalender, dessen Code sieht man wie folg ein:
im Projektfenster die UF anklicken, dann Rechtsklick, Code anzeigen
Der Button "Von" überträgt das ausgewählte Datum in die Textbox daneben,
Der Button "Bis" überträgt das ausgewählte Datum in die Textbox daneben.
Der Button "Einfügen" überträgt das VON-Datum in die aktive Zelle des aktivenTabellenblatts und das BIS-Datum in die Zelle rechts daneben.
Wenn diese Von/Bis-Sachen nicht gebraucht werden können sie auch gelöscht werden
oder nach eigenen Wünschen umgestaltet werden
Beim Löschen bitte beachten: nicht nur die Buttons Von/Bis + Textboxen sondern auch der dazugehörige Code löschen
Der Code hinter dem Button "Einfügen" enthält Anweisungen bezüglich der beiden Textboxen und der beiden Tabellenblattzellen.

Sag mal was, ob dir das weiterhilft.
paula
Anzeige
AW: jetzt kannst du die UF nicht übersehen ;-)
25.10.2005 23:20:11
paula
hier ist sie
https://www.herber.de/bbs/user/27827.xls

hier der "komplette Code" der Kalender-Userform

Option Explicit
Dim dateVon As Date
Dim dateBis As Date
Dim frstDay As Integer
Dim lstDay As Integer
Dim monat As Integer
Dim jahr As Integer
Dim aktuelleNr As Byte 'Um wiederholtes Aufrufen der ToggleAction zu verhindern
Dim tb As Integer
Dim x As Integer

Private Sub UserForm_Initialize()
Dim nDay As Integer
Dim i As Integer
'.....Monate in Combobox2 eintragen
For x = 1 To 12
ComboBox2.AddItem Format(DateSerial(2000, x, 1), "MMMM")
Next x
'.....Jahre in Combobox3 eintragen
For x = 2000 To 2222
ComboBox3.AddItem x
Next x
'.....Aktuelles Datum als Startwerte setzen
ComboBox2.ListIndex = Month(Date) - 1
ComboBox3.ListIndex = 3
frstDay = Weekday(DateSerial(Year(Date), Month(Date), 1), 2)
lstDay = frstDay + Day(DateSerial(Year(Date), Month(Date) + 1, 0))
monat = ComboBox2.ListIndex + 1
jahr = ComboBox3.ListIndex
For i = 1 To 42
With Controls("ToggleButton" & i)
.Visible = False
.Value = False
.BackColor = &H8000000F
.ForeColor = &H800000
End With
With Controls("Label" & i)
.Visible = False
End With
Next i
For nDay = 1 To Day(DateSerial(Year(Date), Month(Date) + 1, 0))
Controls("ToggleButton" & nDay + frstDay - 1).Caption = nDay
Controls("ToggleButton" & nDay + frstDay - 1).Visible = True
Next nDay
'......AKTUELLER TAG MARKIEREN !
With Controls("ToggleButton" & Day(Date) + frstDay - 1)
.Value = True
'.BackColor = &H8000000D
.ForeColor = &HFFFF&
.BackStyle = 0
End With
With Controls("Label" & Day(Date) + frstDay - 1)
.Visible = True
End With
'Aktivierter Tag (tb.caption)ermitteln:
tb = 1
Do Until Controls("ToggleButton" & tb).Value = True
tb = tb + 1
Loop
Label43.Caption = Format(DateSerial(Year(Date), Month(Date), Day(Date)), "mmmm") & " " & Year(Date)
End Sub


Private Sub ComboBox2_Change()
Dim nDay As Integer
Dim i As Integer
monat = ComboBox2.ListIndex + 1
jahr = ComboBox3.ListIndex
frstDay = Weekday(DateSerial(jahr, monat, 1), 2)
lstDay = frstDay + Day(DateSerial(jahr, monat + 1, 0))
For i = 1 To 42
With Controls("ToggleButton" & i)
.Visible = False
.Value = False
.BackColor = &H8000000F
.ForeColor = &H800000
End With
With Controls("Label" & i)
.Visible = False
End With
Next i
For nDay = 1 To Day(DateSerial(jahr, monat + 1, 0))
Controls("ToggleButton" & nDay + frstDay - 1).Caption = nDay
Controls("ToggleButton" & nDay + frstDay - 1).Visible = True
Controls("ToggleButton" & nDay + frstDay - 1).Value = False
Controls("Label" & nDay + frstDay - 1).Visible = True
Next nDay
Label43.Caption = Format(DateSerial(jahr, monat, 1), "mmmm") & " " & Format(DateSerial(jahr, monat, 1), "yyyy")
End Sub


Private Sub ComboBox3_Change()
Dim nDay As Integer
Dim i As Integer
monat = ComboBox2.ListIndex + 1
jahr = ComboBox3.ListIndex
frstDay = Weekday(DateSerial(jahr, monat, 1), 2)
lstDay = frstDay + Day(DateSerial(jahr, monat + 1, 0))
For i = 1 To 42
With Controls("Togglebutton" & i)
.Visible = False
.Value = False
.BackColor = &H8000000F
.ForeColor = &H800000
End With
With Controls("Label" & i)
.Visible = False
End With
Next i
For nDay = 1 To Day(DateSerial(jahr, monat + 1, 0))
Controls("ToggleButton" & nDay + frstDay - 1).Caption = nDay
Controls("ToggleButton" & nDay + frstDay - 1).Visible = True
Controls("Label" & nDay + frstDay - 1).Visible = True
Next nDay
Label43.Caption = Format(DateSerial(jahr, monat, 1), "mmmm") & " " & Format(DateSerial(jahr, monat, 1), "yyyy")
End Sub


Private Sub cmdEinfügen_Click()
If TextBox1.Text = "" Then
cmdVon.SetFocus
ElseIf TextBox2.Text = "" Then
cmdBis.SetFocus
Else
dateVon = TextBox1.Text
dateBis = TextBox2.Text
ActiveCell = dateVon
ActiveCell.Offset(0, 1) = dateBis
Unload Me
End If
End Sub


Private Sub cmdAbbrechen_Click()
Unload Me
End Sub


Private Sub cmdBis_Click()
tb = 1
Do Until Controls("ToggleButton" & tb).Value = True
tb = tb + 1
Loop
TextBox2.Text = CDate(Controls("ToggleButton" & tb).Caption & "." & monat & "." & jahr)
End Sub


Private Sub cmdVon_Click()
tb = 1
Do Until Controls("ToggleButton" & tb).Value = True
tb = tb + 1
Loop
TextBox1.Text = CDate(Controls("ToggleButton" & tb).Caption & "." & monat & "." & jahr)
End Sub


Private Sub ToggleButton1_Click()
If aktuelleNr <> 0 Then Exit Sub
ToggleAction 1
End Sub


Private Sub ToggleButton2_Click()
If aktuelleNr <> 0 Then Exit Sub
ToggleAction 2
End Sub


Private Sub ToggleButton3_Click()
If aktuelleNr <> 0 Then Exit Sub
ToggleAction 3
End Sub


Private Sub ToggleButton4_Click()
If aktuelleNr <> 0 Then Exit Sub
ToggleAction 4
End Sub


Private Sub ToggleButton5_Click()
If aktuelleNr <> 0 Then Exit Sub
ToggleAction 5
End Sub


Private Sub ToggleButton6_Click()
If aktuelleNr <> 0 Then Exit Sub
ToggleAction 6
End Sub


Private Sub ToggleButton7_Click()
If aktuelleNr <> 0 Then Exit Sub
ToggleAction 7
End Sub


Private Sub ToggleButton8_Click()
If aktuelleNr <> 0 Then Exit Sub
ToggleAction 8
End Sub


Private Sub ToggleButton9_Click()
If aktuelleNr <> 0 Then Exit Sub
ToggleAction 9
End Sub


Private Sub ToggleButton10_Click()
If aktuelleNr <> 0 Then Exit Sub
ToggleAction 10
End Sub


Private Sub ToggleButton11_Click()
If aktuelleNr <> 0 Then Exit Sub
ToggleAction 11
End Sub


Private Sub ToggleButton12_Click()
If aktuelleNr <> 0 Then Exit Sub
ToggleAction 12
End Sub


Private Sub ToggleButton13_Click()
If aktuelleNr <> 0 Then Exit Sub
ToggleAction 13
End Sub


Private Sub ToggleButton14_Click()
If aktuelleNr <> 0 Then Exit Sub
ToggleAction 14
End Sub


Private Sub ToggleButton15_Click()
If aktuelleNr <> 0 Then Exit Sub
ToggleAction 15
End Sub


Private Sub ToggleButton16_Click()
If aktuelleNr <> 0 Then Exit Sub
ToggleAction 16
End Sub


Private Sub ToggleButton17_Click()
If aktuelleNr <> 0 Then Exit Sub
ToggleAction 17
End Sub


Private Sub ToggleButton18_Click()
If aktuelleNr <> 0 Then Exit Sub
ToggleAction 18
End Sub


Private Sub ToggleButton19_Click()
If aktuelleNr <> 0 Then Exit Sub
ToggleAction 19
End Sub


Private Sub ToggleButton20_Click()
If aktuelleNr <> 0 Then Exit Sub
ToggleAction 20
End Sub


Private Sub ToggleButton21_Click()
If aktuelleNr <> 0 Then Exit Sub
ToggleAction 21
End Sub


Private Sub ToggleButton22_Click()
If aktuelleNr <> 0 Then Exit Sub
ToggleAction 22
End Sub


Private Sub ToggleButton23_Click()
If aktuelleNr <> 0 Then Exit Sub
ToggleAction 23
End Sub


Private Sub ToggleButton24_Click()
If aktuelleNr <> 0 Then Exit Sub
ToggleAction 24
End Sub


Private Sub ToggleButton25_Click()
If aktuelleNr <> 0 Then Exit Sub
ToggleAction 25
End Sub


Private Sub ToggleButton26_Click()
If aktuelleNr <> 0 Then Exit Sub
ToggleAction 26
End Sub


Private Sub ToggleButton27_Click()
If aktuelleNr <> 0 Then Exit Sub
ToggleAction 27
End Sub


Private Sub ToggleButton28_Click()
If aktuelleNr <> 0 Then Exit Sub
ToggleAction 28
End Sub


Private Sub ToggleButton29_Click()
If aktuelleNr <> 0 Then Exit Sub
ToggleAction 29
End Sub


Private Sub ToggleButton30_Click()
If aktuelleNr <> 0 Then Exit Sub
ToggleAction 30
End Sub


Private Sub ToggleButton31_Click()
If aktuelleNr <> 0 Then Exit Sub
ToggleAction 31
End Sub


Private Sub ToggleButton32_Click()
If aktuelleNr <> 0 Then Exit Sub
ToggleAction 32
End Sub


Private Sub ToggleButton33_Click()
If aktuelleNr <> 0 Then Exit Sub
ToggleAction 33
End Sub


Private Sub ToggleButton34_Click()
If aktuelleNr <> 0 Then Exit Sub
ToggleAction 34
End Sub


Private Sub ToggleButton35_Click()
If aktuelleNr <> 0 Then Exit Sub
ToggleAction 35
End Sub


Private Sub ToggleButton36_Click()
If aktuelleNr <> 0 Then Exit Sub
ToggleAction 36
End Sub


Private Sub ToggleButton37_Click()
If aktuelleNr <> 0 Then Exit Sub
ToggleAction 37
End Sub


Private Sub ToggleButton38_Click()
If aktuelleNr <> 0 Then Exit Sub
ToggleAction 38
End Sub


Private Sub ToggleButton39_Click()
If aktuelleNr <> 0 Then Exit Sub
ToggleAction 39
End Sub


Private Sub ToggleButton40_Click()
If aktuelleNr <> 0 Then Exit Sub
ToggleAction 40
End Sub


Private Sub ToggleButton41_Click()
If aktuelleNr <> 0 Then Exit Sub
ToggleAction 41
End Sub


Private Sub ToggleButton42_Click()
If aktuelleNr <> 0 Then Exit Sub
ToggleAction 42
End Sub

Sub ToggleAction(nr As Byte)
Dim obj As Object
'
For Each obj In frmKalender.Controls
'Wenn es ein ToggleButton ist....
If Left(obj.Name, 12) = "ToggleButton" Then
aktuelleNr = nr 'Aufruf der anderen Toggles verhindern
'Wenn es der gewünschte Toggle ist
If obj.Name = "ToggleButton" & nr Then
'setze Atribute
If obj.Value = True Then
obj.BackColor = &H8000000D
obj.ForeColor = &HFFFF&
obj.Font.Size = 10
obj.Font.Bold = True
obj.BackStyle = 0
With Controls("Label" & nr)
.Visible = True
End With
Else
obj.Value = True '+++++++
obj.BackColor = &H8000000D
obj.ForeColor = &HFFFF&
obj.Font.Size = 10
obj.Font.Bold = True
obj.BackStyle = 0
With Controls("Label" & nr)
.Visible = True
End With
End If
Else
'wenn es nicht der gewünschter Toggle ist
obj.Value = False
obj.BackColor = &H8000000F
obj.ForeColor = &H800000
obj.Font.Size = 8
obj.Font.Bold = False
obj.BackStyle = 1
With Controls("Label" & nr)
.Visible = True
End With
End If
End If
Next obj
aktuelleNr = 0 'Aufruf wieder freigeben
End Sub
paula
Anzeige
AW: jetzt kannst du die UF nicht übersehen ;-)
26.10.2005 05:10:24
Gnilk
Hallo Paula,
nimm es mir nicht uebel, aber ich habe mir selbst so einen kleinen Kalender gebaut. Erist zwar nicht perfekt, langt aber fuer meine Zwecke.
Vielen Dank fuer die Arbeit die Du Dir gemacht hast, aber ich nehme das "einfache" Teil.
Sorry
Ciao
Gnilk

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige