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
1452to1456
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
Namen einer Textbox an Funktion übergeben
15.10.2015 10:14:44
PQuest:-)
Hallo,
gleich noch eine Frage hinterher.
Ich habe einen tollen Code im Internet gefunden um Datumsangaben per Klick in einem Kalender auszuwählen.In dem Originalcode wird nur mit einer Ausgabezelle (C4) gearbeitet und das Kalendertool wird mit Klick auf eine Schaltfläche geöffnet.
Diesen Code würde ich gern so verwenden, dass ich auf ein Textfeld klicke und das Kalendertool öffnet sich. Hierbei soll der Name des Textfeldes mitgegeben werden und das ausgewählte Datum soll danach in die Textbox geschrieben werden. So sieht der Originalcode aus:
Public Sub PickDate() 'Aufruf des Tools über eine Schaltfläche
Call DatePick.DatePickinRange(Range("C4"))
End Sub
Und das sind die Programmteile, die den Wert zurückschreiben:
Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
On Error GoTo Recover
If Target.Cells.count = 1 Then
If IsDate(Target.value) Then
SF_DatePick.DatePickinRange Target
Cancel = True
Exit Sub
End If
End If
Recover:
End Sub
Public Sub DatePickinRange(DRange As Range, _
Optional FormatTxT As String = "", _
Optional Language As String = "", _
Optional HolidayLocation As String = "", _
Optional ThreeMonthFlag As Boolean = False)
Dim TVar As Variant, DOut As Variant
TVar = DRange.value
If IsDate(TVar) = True Then
DOut = DatePick(CDate(TVar), FormatTxT, Language, HolidayLocation, ThreeMonthFlag)
Else
DOut = DatePick(Now, FormatTxT, Language, HolidayLocation, ThreeMonthFlag)
End If
If DOut = False Then
'Nothing
ElseIf DRange.value  DOut Then
DRange.value = DOut
End If
Set TVar = Nothing
Set DOut = Nothing
End Sub

Public Sub DatePickinCtl(InputCtl As Control, _
Optional FormatTxT As String = "dd.mm.yyyy", _
Optional Language As String = "", _
Optional HolidayLocation As String = "", _
Optional ThreeMonthFlag As Boolean = False)
Dim TVar As Variant, DOut As Variant
TVar = InputCtl.value
If IsDate(TVar) = True Then
DOut = DatePick(CDate(TVar), FormatTxT, Language, HolidayLocation, ThreeMonthFlag)
Else
DOut = DatePick(Now, FormatTxT, Language, HolidayLocation, ThreeMonthFlag)
End If
If DOut = False Then
'Nothing
ElseIf InputCtl.value  DOut Then
InputCtl.value = DOut
End If
Set TVar = Nothing
Set DOut = Nothing
End Sub

Meine Fragen:
1. Wie kann ich dem befehl den Namen einer Textbox anstelle der Range übergeben?
2. Wie kann ich den ausgewählten Wert wieder in die Textbox zurückschreiben?
Gruß,
PQuest:-)

2
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Namen einer Textbox an Funktion übergeben
15.10.2015 19:18:41
Uduuh
Hallo,
letztlich genauso.
Private Sub TextBox1_DblClick(ByVal Cancel As MSForms.ReturnBoolean)
If IsDate(TextBox1) Then
Cancel = True
SF_DatePick.DatePickinRange TextBox1
End If
End Sub

und weiter in dem Sinne
Gruß aus’m Pott
Udo

AW: Namen einer Textbox an Funktion übergeben
15.10.2015 19:57:08
PQuest:-)
Besten Dank :-)
Anzeige

306 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige