Herbers Excel-Forum - das Archiv

Userform

Informationen und Beispiele zu den hier genannten Dialog-Elementen:
Bild

Betrifft: Userform
von: Stefan
Geschrieben am: 10.12.2003 15:12:34
hallo ihr fleißigen excel helfer,
ich hab wiedermal ein großes problem und brauche dringend eure hilfe.
ich möchte eine userform programmieren mit zwei eingabefeldern, in denen ich einen namen und ein geburtstagdatum eintragen kann.
wie schaffe ich es das die werte, die ich in der userform eingebe in einer exeltabelle aufgelistet werden?

perfekt wäre es wenn sich dann die geburtstagsliste nach jedem eintrag neu nach dem datum sortieren würde.

ist das irgendwie möglich?

tausend dank für eure hilfe

gruß stefan

Bild

Betrifft: AW: Userform
von: Eugen
Geschrieben am: 10.12.2003 15:36:13
Hallo Stefan,

probiere es mal damit:

Dim geburtstag As String
Dim gebname As String


Private Sub CommandButton1_Click()
geburtstag = TextBox1.Value
gebname = TextBox2.Value
Range("A1").Select
Cells.Find(What:="", After:=ActiveCell, LookIn:=xlFormulas, LookAt:= _
xlPart, SearchOrder:=xlByRows, SearchDirection:=xlNext, MatchCase:=False _
, SearchFormat:=False).Activate
ActiveCell.Value = gebname
ActiveCell.Offset(0, 1).Value = geburtstag
Columns("B:B").Select
Cells.Find(What:="", After:=ActiveCell, LookIn:=xlFormulas, _
LookAt:=xlWhole, SearchOrder:=xlByColumns, SearchDirection:=xlNext, _
MatchCase:=False, SearchFormat:=False).Activate
Zel = "A1"
Zelle = ActiveCell.Address(False, False)
Range(Zel & ":" & Zelle).Sort Key1:=Range("B1"), Order1:=xlAscending, Header:= _
xlGuess, OrderCustom:=1, MatchCase:=False, Orientation:=xlTopToBottom, _
DataOption1:=xlSortTextAsNumbers
End Sub



Gruß Eugen
Bild

Betrifft: AW: Userform
von: Stefan
Geschrieben am: 10.12.2003 15:41:59
??? wo muß ich denn was eintragen?
ich habe eine userform zusammengebastelt auf der zwei textfelder zu sehen sind und jetzt?

ich bin leider ziemlich blass was diese geschichte angeht.
Bild

Betrifft: AW: Userform
von: Eugen
Geschrieben am: 10.12.2003 15:48:59
Hi Stefan,

also hier nochmal der Code. Musste noch eine kleinigkeit verändern damit dieser korrekt ausgeführt wird.
Esrtelle eine UserForm mit zwei Textfeldern und einer Schaltfläche die
CommandButton1 heißt. Doppelklick auf die UserForm und den nachfolgenden Code da einfügen. Dann auf "Play" und testen.

Dim geburtstag As String
Dim gebname As String


Private Sub CommandButton1_Click()
geburtstag = TextBox1.Value
gebname = TextBox2.Value
Columns("A:A").Select
Cells.Find(What:="", After:=ActiveCell, LookIn:=xlFormulas, LookAt:= _
xlPart, SearchOrder:=xlByColumns, SearchDirection:=xlNext, MatchCase:=False _
, SearchFormat:=False).Activate
ActiveCell.Value = gebname
ActiveCell.Offset(0, 1).Value = geburtstag
Columns("B:B").Select
Cells.Find(What:="", After:=ActiveCell, LookIn:=xlFormulas, _
LookAt:=xlWhole, SearchOrder:=xlByColumns, SearchDirection:=xlNext, _
MatchCase:=False, SearchFormat:=False).Activate
Zel = "A1"
Zelle = ActiveCell.Address(False, False)
Range(Zel & ":" & Zelle).Sort Key1:=Range("B1"), Order1:=xlAscending, Header:= _
xlGuess, OrderCustom:=1, MatchCase:=False, Orientation:=xlTopToBottom, _
DataOption1:=xlSortTextAsNumbers
End Sub



Gruß Eugen
Bild

Betrifft: AW: Userform
von: Stefan
Geschrieben am: 10.12.2003 15:58:50
das funktioniert, aber nicht bei mir! ich bekomme immer die fehlermeldung:
benanntes argument nicht bekannt. und SearchFormat:=False) ist blau markiert?

was nun?
Bild

Betrifft: AW: Userform
von: Eugen
Geschrieben am: 10.12.2003 16:07:43
Probiere es damit ...
SearchFormat:=False wurde hier nur herausgelöscht

Dim geburtstag As String
Dim gebname As String



Private Sub CommandButton1_Click()
geburtstag = TextBox1.Value
gebname = TextBox2.Value
Columns("A:A").Select
Cells.Find(What:="", After:=ActiveCell, LookIn:=xlFormulas, LookAt:= _
xlPart, SearchOrder:=xlByColumns, SearchDirection:=xlNext, _
MatchCase:=False).Activate
ActiveCell.Value = gebname
ActiveCell.Offset(0, 1).Value = geburtstag
Columns("B:B").Select
Cells.Find(What:="", After:=ActiveCell, LookIn:=xlFormulas, _
LookAt:=xlWhole, SearchOrder:=xlByColumns, SearchDirection:=xlNext, _
MatchCase:=False).Activate
Zel = "A1"
Zelle = ActiveCell.Address(False, False)
Range(Zel & ":" & Zelle).Sort Key1:=Range("B1"), Order1:=xlAscending, Header:= _
xlGuess, OrderCustom:=1, MatchCase:=False, Orientation:=xlTopToBottom, _
DataOption1:=xlSortTextAsNumbers
End Sub


Bild

Betrifft: AW: Userform
von: Stefan
Geschrieben am: 10.12.2003 16:10:04
geht leider wieder nicht, jetzt ist DataOption1: blau markiert!
Bild

Betrifft: Ähem - hüstel...
von: Boris
Geschrieben am: 10.12.2003 16:12:08
Hi,

...wozu dieser ganze Aufwand? Warum möchtest du "Daten-Maske" nicht benutzen? Du baust das mit deinem Userform nur 1:1 nach...

Grüße Boris
Bild

Betrifft: AW: Ähem - hüstel...
von: Stefan
Geschrieben am: 10.12.2003 16:23:15
weil das nur ein winziger teil einer eingabe maske werden soll.
Bild

Betrifft: AW: Userform
von: Eugen
Geschrieben am: 10.12.2003 16:56:40
Range(Zel & ":" & Zelle).Sort Key1:=Range("B1"), Order1:=xlAscending, Header:= _
xlGuess, OrderCustom:=1, MatchCase:=False, Orientation:=xlTopToBottom, _
DataOption1:=xlSortNormal

Probier es mal damit.
Bild

Betrifft: AW: Userform
von: Stefan
Geschrieben am: 11.12.2003 08:33:09
geht leider immer noch nicht! sorry!
Bild

Betrifft: AW: Userform
von: Eugen
Geschrieben am: 11.12.2003 09:23:04
OK, mach folgendes:

Erstelle eine Beispieltabelle mit Namen und Datum in A und B spalte.
Zeichne dann ein Macro auf und zwar wie folgt:
Macro aufzeichnen
B-Spalte markieren
Daten -> Sorteiren -> Markierung erweitern OK -> und wieder OK
Macro aufzeichnung mit Stop beenden.
Dann ins VBA und sich den Teil der nach .Sort befindet rauskopieren und in meinem Code ersetzen.

Ich hoffe du kommst klar und es klappt.

Gruß Eugen
Bild

Betrifft: DANKE!!!
von: Stefan
Geschrieben am: 11.12.2003 09:50:35
hallo eugen
jetzt funkts, tausend dank nochmal

gruß stefan
Bild

Betrifft: AW: Userform - Einfacher: Daten-Maske
von: Boris
Geschrieben am: 10.12.2003 15:44:23
Hi Stefan,

A1: Name B1: Geburtsdatum

Dann Daten-Maske aufrufen. Dort kannst du alles bequem eingeben.
Dann zeichne dir noch das Sortier-Makro auf und weise es einer Schaltfläche zu - fertig.

Grüße Boris
Bild
Excel-Beispiele zum Thema " Userform"
Diagramm in Userform XL-Dateien in UserForm listen
UserForm an Excel-Fenster anpassen Fundstellen in UserForm listen
Module und UserForms austauschen In einer Schleife auf Elemente einer UserForm zugreifen
Werte in eine ComboBox einer UserForm übernehmen Zellinhalt als Label-Aufschrift in UserForm
Alle CheckBoxes einer UserForm ansprechen Wenn kein Eintrag, UserForm nicht schließen