Anzeige
Archiv - Navigation
1080to1084
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

Eintrag aus Textfeld in zelle übernehmen wenn leer

Eintrag aus Textfeld in zelle übernehmen wenn leer
Benni
hallo,
kann mir jemand helfen, ich kenne mich mit VBA nicht wirklich gut aus.
ich möchte die Eingabe in einem Textfeld auf einer UserForm in eine Zelle auf dem Worksheets "Werte" übertragen. Problem bei der Sache ist, dass z.B. ich bei der Zelle A1 Anfange und wenn dort schon ein „Inhalt“ vorhanden ist um eine Zelle nach unten gehen soll. Wenn diese leer ist soll der Text aus dem Textfeld übernommen werden und wenn nicht wieder eine Zelle nach unten gegangen werden usw.
Zweites Problem:
In einem Kombinationsfeld stehen mehrere Auswahlmöglichkeiten (Text1, Text2, Text3. Wenn ich eines z.B. Text1 anklicke soll die Zelle B1 kopiert werden und wie oben in die erste freie Zelle in Spalte B eingefügt werden
Ich bedanke mich im voraus für Eure Bemühungen
AW: Eintrag aus Textfeld in zelle übernehmen wenn leer
24.06.2009 09:05:21
Hajo_Zi
Halllo Benni,

Option Explicit
Sub bEnni()
Dim LoLetzte As Long
With Worksheets("Tabelle1")
LoLetzte = IIf(IsEmpty(.Cells(Rows.Count, 1)), .Cells(Rows.Count, 1).End(xlUp).Row, . _
Rows.Count) + 1
.Cells(LoLetzte, 1) = Textbox1   ' inhalt wird als Text übertragen
End With
End Sub



AW: Eintrag aus Textfeld in zelle übernehmen wenn leer
25.06.2009 07:31:25
Benni
Hallo,
vielen Dank Hajo_Zi. Zwei kleine Probleme gibt es noch. Zum einen wird nach jeder Eingabe der Wert übertragen und nicht erst wenn die Eingabe vollständig ist. z.B. wenn ich 1 eingebe wird in die Zelle 1 ausgegeben, wenn ich nach der 1 eine 2 Eingebe wird in der darunterliegenden Zellen 12 übertragen.
Zweites Problem ist, dass ich noch nicht vorgeben kann an welcher stelle die Abfrage ob leer oder nicht beginnt.
mfg
Anzeige
AW: Eintrag aus Textfeld in zelle übernehmen wenn leer
25.06.2009 07:44:04
Benni
Hallo,
mir ist gerade noch ein weiteres Problem aufgefallen. Da ich mehrere Textfelder in der UserForm habe und diese immer den Text in die letzte leere Zelle übertragen sollen, wäre ist gut, um Fehler vermeiden zu können, dass die anderen Textfelder immer in die selben Zeile wie das erste Textfeld ihren Eintag machen. Das Bedeutet, dass die Abfrage ob die Zelle leer ist oder nicht nur bei dem ersten Textfeld erfolgt und die anderen Textfelder nur auf die Zelle zurückgreifen und die Spalte sich ändert.
mfg
AW: Eintrag aus Textfeld in zelle übernehmen wenn leer
25.06.2009 08:51:11
Hajo_Zi
Hallo Benni,
benutze nicht das Change Ereignis sondern AfterUpdate oder Exit.
Der Punkt ist mir nicht klar.

Zweites Problem ist, dass ich noch nicht vorgeben kann an welcher stelle die Abfrage ob leer  _
oder nicht beginnt.


Zu Beitrag 2 schreibe die Zeile in eine Variable.

Anzeige
AW: Eintrag aus Textfeld in zelle übernehmen wenn leer
25.06.2009 10:24:26
Benni
Hallo Hajo_Zi,
derzeit fängt der Übertrag aus dem Textfeld in der zweiten Zeile (A2) an. Wenn ich aber möchte, dass die Abfrage, ob leer oder nicht, erst in Zeile 9 (A9) beginnt.
mfg
AW: Eintrag aus Textfeld in zelle übernehmen wenn leer
25.06.2009 10:30:38
Benni
Hallo Hajo_Zi,
mit dem aktuellen Code wird der Eintag nach dem Wechsel zu einem anderen Element in Tabelle1 übernommen. Wenn ich dies aber erst nach drücken des "OK-Button" möchte, was muss im Code geändert werden.
Derzeit wird durch drücken des "Abbruch-Button" (Unload Me) der Eintrag nicht entfernt.
AW: Eintrag aus Textfeld in zelle übernehmen wenn leer
25.06.2009 11:10:21
Hajo_Zi
Hallo Benni,
schreibe den Code zum übertragen unter denm CommandButton

Zur Zeile If Loletzte


Gruß Hajo

Anzeige
AW: Eintrag aus Textfeld in zelle übernehmen wenn leer
25.06.2009 10:34:07
Benni
Hallo Hajo_Zi,
wie meinst Du das mit der variablen?
AW: Eintrag aus Textfeld in zelle übernehmen wenn leer
25.06.2009 11:26:31
Hajo_Zi
Hallo Benni,
ich sehe Deinen Code nicht. irgedwie legst Du ja fest in welche Zeile geschrieben werden soll und da benutze eine Variable.
Gruß Hajo
AW: Eintrag aus Textfeld in zelle übernehmen wenn leer
25.06.2009 12:44:45
Benni
Hallo Hajo,
hier der Code:

Private Sub CommandButton1_Click()
Unload Me   'Abbruch
End Sub



Private Sub CommandButton2_Click()
'OK
End Sub



Private Sub TextBox1_AfterUpdate()      'Spalte A z.B. A2
Dim LoLetzte As Long
With Worksheets("Tabelle1") '.Cells(1, 1)
LoLetzte = IIf(IsEmpty(.Cells(Rows.Count, 1)), .Cells(Rows.Count, 1).End(xlUp).Row, . _
Rows.Count) + 1
.Cells(LoLetzte, 1) = TextBox1   ' inhalt wird als Text übertragen
End With
End Sub



Private Sub TextBox2_AfterUpdate()     'Spalte B z.B. B2
End Sub



Private Sub TextBox3_AfterUpdate()     'Spalte C z.B. C2
End Sub


Anzeige
AW: Eintrag aus Textfeld in zelle übernehmen wenn leer
25.06.2009 18:14:55
Hajo_Zi
Hallo Benni,
Du hast Die Variable Loletzte benutzt, kopiere den Code zum CommnadButton und benutze bei den andere Zellen auch loletzte nur eine andere Spalte.
Gruß Hajo
AW: Eintrag aus Textfeld in zelle übernehmen wenn leer
26.06.2009 11:51:04
Benni
Hallo Hajo,
ich bekommen das mit den weiteren Textfeldern nicht hin. Könntest du mir noch mal helfen?!
Vielen Dank
AW: Eintrag aus Textfeld in zelle übernehmen wenn leer
26.06.2009 11:58:46
Hajo_Zi
Hallo Benni,
Cells(loletzte,1)=Textbox1
Cells(loletzte,2)=Textbox2
Cells(loletzte,3)=Textbox3
Gruß Hajo

439 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige