Registriert seit: 22.10.2017
Version(en): 2016
Hallo liebe Forummitglieder! Zum Ablegen von Werten aus einer Userform in einer Tabelle in bestimmten Spalten, habe ich folgenden Code: Code: Private Sub CommandButton2_Click()
'Daten in Tabelle schreiben Sheets("Hauptseite").Activate Zeile = Cells(Rows.Count, 1).End(xlUp).Row + 1 Zeile = ZeileMax + 1 With UserForm1 Cells(3, 7).Value = TextBox1.Value Cells(3, 8).Value = TextBox2.Value Cells(3, 9).Value = TextBox3.Value Cells(3, 10).Value = TextBox4.Value Cells(3, 11).Value = TextBox5.Value Cells(3, 12).Value = TextBox6.Value
End With End Sub
Soweit werden die Werte in den Spalten abgelegt....nur wenn ich die nächsten Daten aus der Userform in die Zeile darunter ablegen möchte, klappt das nicht? Was mache ich da falsch? Gruß Mike
Registriert seit: 17.04.2014
Version(en): MS Office 365(32)
Hallo Mike, (27.08.2020, 20:40)MdeJong schrieb: Was mache ich da falsch? Du beziehst Dich bei der Ermittlung der letzten Zeile auf die Spalte A, die Du aber gar nicht benutzt bei den Textboxüberträgen. Gruß Uwe
Folgende(r) 1 Nutzer sagt Danke an Kuwer für diesen Beitrag:1 Nutzer sagt Danke an Kuwer für diesen Beitrag 28
• MdeJong
Registriert seit: 22.10.2017
Version(en): 2016
27.08.2020, 21:16
(Dieser Beitrag wurde zuletzt bearbeitet: 27.08.2020, 21:42 von MdeJong.)
Hallo Kuwer ganz dumme Frage....in welcher Zeile im Code gebe ich die Spalte A an? Zeile = Cells(Rows.Count, 1).End(xlUp).Row + 1Bei Rows.Count, 7 (Für die Spalte G?
Ich bekomme es nicht hin....habe nun ein paar Dinge ausprobiert....ich weiß nicht was dort falsch ist, was geändert werde müsste
Registriert seit: 17.04.2014
Version(en): MS Office 365(32)
Hallo Mike, bei den Cells(3, ... gehört natürlich die Variable Zeile auch eingebaut. Gruß Uwe
Folgende(r) 1 Nutzer sagt Danke an Kuwer für diesen Beitrag:1 Nutzer sagt Danke an Kuwer für diesen Beitrag 28
• MdeJong
Registriert seit: 29.09.2015
Version(en): 2030,5
27.08.2020, 22:44
(Dieser Beitrag wurde zuletzt bearbeitet: 27.08.2020, 22:45 von snb.)
Die Frage 'was mach ich richtig' wäre einfacher zu beantworten: Code: Private Sub CommandButton2_Click() Sheets("Hauptseite").Cells(Rows.Count,1).End(xlUp).offset(1).resize(,6)=array(TextBox1,TextBox2,TextBox3,TextBox4,TextBox5,TextBox6) End Sub
Registriert seit: 22.10.2017
Version(en): 2016
Hallo snb, also deine Codezeile habe ich eingebaut und alles wird in den richtigen Spalten abgelegt. Nur wenn ich die nächsten Werte in den betreffenden Spalten ablegen möchte, wird das in der darunter liegenden Zeile gemacht, aber die erste vorher abgelegten Werte werden dann auch verändert? Code: Private Sub CommandButton2_Click()
'Daten in Tabelle schreiben 'Sheets("Hauptseite").Activate Sheets("Hauptseite").Cells(Rows.Count, 7).End(xlUp).Offset(1).Resize(, 6) = Array(TextBox1, TextBox2, TextBox3, TextBox4, TextBox5, TextBox6) 'Zeile = Cells(Rows.Count, 7).End(xlUp).Row + 1 'Zeile = ZeileMax + 1 With UserForm1 Cells(3, 7).Value = TextBox1.Value Cells(3, 8).Value = TextBox2.Value Cells(3, 9).Value = TextBox3.Value Cells(3, 10).Value = TextBox4.Value Cells(3, 11).Value = TextBox5.Value Cells(3, 12).Value = TextBox6.Value
End With End Sub
Es ist eine Testmappe, weil ich kleine Codes üben möchte. So wie ich den Code angelegt habe, so habe ich das bisher verstanden. das ablegen hat ja schon mal geklappt zu Anfang nur nicht an der Stelle, wo ich es gern hätte und immer in der darunter neuen freien Zeile :) Gruß Mike
Registriert seit: 18.06.2017
Version(en): 2021
Hallo Mike,
das was Uwe angedeutet hat, ist schon mal wichtig, weil sonst immer Zeile 3. Aber schau dir das mal an
Zeile = Cells(Rows.Count, 1).End(xlUp).Row + 1 Zeile = ZeileMax + 1
fällt dir da was auf?
Könnte umgekehrt ein Schuh draus werden?
Gruß Rudi
Folgende(r) 1 Nutzer sagt Danke an Rudi'S für diesen Beitrag:1 Nutzer sagt Danke an Rudi'S für diesen Beitrag 28
• MdeJong
Registriert seit: 22.10.2017
Version(en): 2016
28.08.2020, 10:37
(Dieser Beitrag wurde zuletzt bearbeitet: 28.08.2020, 10:38 von MdeJong.)
Hallo Rudis
diese Zeile?
Zeile = Cells(Rows.Count, 1)
ich habe die anstatt 1 die 7 genommen, weil es die Spalte 7 ist. Dann werden auch ab dieser Spalte die Werte dort eingetragen. Doch wenn ich dann wieder Werte ablegen will, werden wie gesagt die Werte auch darunter abgelegt, aber die darüber, wo schon Werte sind werden mit verändert.
Was Uwe meinte...diese Zeile: Cells(3, 7).Value = TextBox1.Value
ist das nicht Korrekt?
Gruß Mike
Registriert seit: 11.04.2014
Version(en): Office 2007
Hallo, (28.08.2020, 10:37)MdeJong schrieb: Was Uwe meinte...diese Zeile:[/font][/size][/color] Cells(3, 7).Value = TextBox1.Value
ist das nicht Korrekt? mit dieser Codezeile trägst Du den Inhalt deiner Textbox1 immer in die Zelle G3 ein und das ist sicherlich nicht das was Du willst.
Gruß Stefan Win 10 / Office 2016
Folgende(r) 1 Nutzer sagt Danke an Steffl für diesen Beitrag:1 Nutzer sagt Danke an Steffl für diesen Beitrag 28
• MdeJong
Registriert seit: 22.10.2017
Version(en): 2016
Hallo Steffl,
ich habe das bisher so verstanden, das ich mit dieser Zeile angebe, ab welcher Zeile und Spalte die Werte eingetragen werden sollen. Wie muss es nun korrekt lauten in der Zeile?
Cells(3, 7).Value = TextBox1.Value
Gruß Mike
|