Anzeige
Archiv - Navigation
1228to1232
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
Inhaltsverzeichnis

Frage an Hajo

Frage an Hajo
Ingo
Hallo Hajo,
ich habe deine userform_bei_bestimmter_zelle_kalender gefunden. Die kann ich gut gebrauchen.
Ich habe einen Button auf meine userform1 gelegt, der den Kalender aufruft.
Wie kann ich es jetzt anstellen, dass das angeklickte Datum z.B. "18.9.2011" in meine Textbox1 auf userform1 übernommen wird und dann in Tabelle"Erfassung" in Spalte A1 erscheint?
Wäre nett wenn Du mir helfen könntest
Gruß Ingo

6
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Benutzer
Anzeige
AW: UserForm Kalender
18.09.2011 14:10:42
Hajo_Zi
Hallo Ingo,
in der Klasse

Option Explicit                                     ' Variablendefinition erforderlich
'* H. Ziplies                                     *
'* 08.08.11                                       *
'* erstellt von HajoZiplies@WEB.de                *
'* http://Hajo-Excel.de
Public WithEvents Label As MSForms.Label
Private Sub Label_Click()
If Month(Label.Tag) = Month(DaDatumKa) Then
Frm_Kalender.Textbox1 = CDate(Label.Tag)
Range("A1") = CDate(Label.Tag)             ' Tag in Zelle
'Unload Frm_Kalender                         ' UserForm schliessen
Else
Erstellen Label.Tag                         ' ausgewählten Monat anzeigen
End If
End Sub

unload habe ich mal auskommentiert.

Anzeige
AW: UserForm Kalender
18.09.2011 14:59:48
Ingo
Hallo Hajo,
das ging ja super schnell!!! VielenDank! Es hat zwar bei mir etwas gedauert, aber so nach und nach hab ichs hinbekommen. Ich mußte nur statt Frm_Kalender. userform1 eingeben jetzt klappt´s. Mühsam ernährt sich das Eichhörnchen, aber Dank der Hilfe im Forum kommt man immer ein Stück weiter!
Da hätte ich noch eine Frage: Ich habe im Tabellenblatt Eingabe mehrere Buttons, mit denen ich Userforms aufrufe, wenn ich bei einer aufgerufenen Userform auf den Button einfügen klicke, wird jedesmal das entsprechende Tabellenblat geöffnet in das die Daten eingegeben werden. Kann man erreichen, dass die Daten in das ensprechende Blatt geschrieben werden, OHNE dass es jedesmal geöffnet wird?
herzlichen Gruß
Ingo
Anzeige
AW: UserForm Kalender
18.09.2011 15:19:51
Hajo_Zi
Hallo Ingo,
Du meinst aktiviert?
gebe die Zelle komplett an.
Worksheets("Tabelle1").range("A1")=...
Falls es nicht die aktive Datei ist, die auch noch angeben.
Gruß Hajo
AW: UserForm Kalender
18.09.2011 15:38:18
Ingo
Hallo Hajo,
vielleicht hab ich das schlecht erklärt. Die Tabelle " Erfassung" soll schon so aktiviert sein, dass Daten aus userform, die aber in Tabelle "Eingabe" aufgerufen und angezeigt wird, eingetragen werden. Dabei soll aber die Tabelle " Erfassung" nicht geöffnet werden (zu sehen sein) .
Ich kann aber auch so damit leben.
Gruß
Ingo
'Daten zurückschreiben

Private Sub CommandButton1_Click()
Set frm = userform1
Sheets("Erfassung").Activate
'letzte belegte Zelle in Tabelle finden
Range("A65536").End(xlUp).Offset(1, 0).Select
With frm
ActiveCell.Value = .TextBox1.Value
ActiveCell.Offset(0, 1).Value = .TextBox2.Value
ActiveCell.Offset(0, 2).Value = .ComboBox1.Value
ActiveCell.Offset(0, 3).Value = .TextBox4.Value
ActiveCell.Offset(0, 4).Value = .TextBox5.Value
ActiveCell.Offset(0, 5).Value = .ComboBox2.Value
ActiveCell.Offset(0, 6).Value = .TextBox7.Value
End With
'Optionsfelder auswerten
If OptionButton1.Value = True Then
ActiveCell.Offset(0, 7).Value = "1"
Else
If OptionButton2.Value = True Then
ActiveCell.Offset(0, 8).Value = "1"
Else
If OptionButton3.Value = True Then
ActiveCell.Offset(0, 9).Value = "1"
End If
End If
End If
If OptionButton4.Value = True Then
ActiveCell.Offset(0, 10).Value = "1"
Else
If OptionButton5.Value = True Then
ActiveCell.Offset(0, 11).Value = "1"
Else
If OptionButton6.Value = True Then
ActiveCell.Offset(0, 12).Value = "1"
End If
End If
End If
End Sub

Anzeige
AW: UserForm Kalender
18.09.2011 15:48:46
Hajo_Zi
Hallo Ingo,
laut Deinem Code wird der letzte Eintrag in Spalte A überschrieben. Ich hätte Loletzte +1 benutzt.
Fast ales wird als Text eingetragen.
Der Code ist doch bestimmt in der Userform, da kann der Bezug zur UserForm entfallen.
Ich hätte es so geschrieben auf der Grundlage Deines Codes.

Option Explicit
Private Sub CommandButton1_Click()
Dim Loletzte As Long
Set frm = UserForm1
With Sheets("Erfassung")
'letzte belegte Zelle in Tabelle finden
Loletzte = IIf(IsEmpty(.Cells(.Rows.Count, 1)), _
.Cells(Rows.Count, 1).End(xlUp).Row, .Rows.Count)
.Cells(Loletzte, 1) = frm.TextBox1.Value
.Cells(Loletzte, 1).Offset(0, 1) = frm.TextBox2.Value
.Cells(Loletzte, 1).Offset(0, 2) = frm.ComboBox1.Value
.Cells(Loletzte, 1).Offset(0, 3) = frm.TextBox4.Value
.Cells(Loletzte, 1).Offset(0, 4) = frm.TextBox5.Value
.Cells(Loletzte, 1).Offset(0, 5) = frm.ComboBox2.Value
.Cells(Loletzte, 1).Offset(0, 6) = frm.TextBox7.Value
'Optionsfelder auswerten
If OptionButton1.Value = True Then
.Cells(Loletzte, 1).Offset(0, 7) = 1
Else
If OptionButton2.Value = True Then
.Cells(Loletzte, 1).Offset(0, 8) = 1
Else
If OptionButton3.Value = True Then
.Cells(Loletzte, 1).Offset(0, 9) = 1
End If
End If
End If
If OptionButton4.Value = True Then
.Cells(Loletzte, 1).Offset(0, 10) = 1
Else
If OptionButton5.Value = True Then
.Cells(Loletzte, 1).Offset(0, 11) = 1
Else
If OptionButton6.Value = True Then
.Cells(Loletzte, 1).Offset(0, 12) = 1
End If
End If
End If
End With
Set frm = Nothing
End Sub

Gruß Hajo
Anzeige
AW: UserForm Kalender
18.09.2011 16:03:32
Ingo
Lieber Hajo,
wie kann ich das wieder gut machen? Du hast mir sehr geholfen und heute am Sonntag wieder einen Menschen glücklich gemacht! Viiieeelen Dank!!!!
Ingo

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige