Microsoft Office Forum [ www.Office-Fragen.de ] >> READONLY <<

Microsoft Office 2003-2019 => Excel => Thema gestartet von: leher am Februar 07, 2012, 10:17:31 Vormittag

Titel: Zelle in Userform ist zu klein, es wird nicht alles übernommen
Beitrag von: leher am Februar 07, 2012, 10:17:31 Vormittag
Hallo,

ich habe eine Excel Tabelle, auf der sich ein Button befindet, bei dessen Anklicken sich eine Userform öffnet. Die eingetragenen Daten in diese Userform werden in eine andere Tabelle in Excel übernommen. Wenn ich nun in der Userform in die Textbox etwas eintrage und zwar sehr viel, wird allerdings nicht alles übernommen... Es scheint als ob die Zelle eine zu geringe Kapazität hat...

Kann mir hier jemand helfen? Das wäre toll!

Vielen Dank!

Leher
Titel: Antw: Zelle in Userform ist zu klein, es wird nicht alles übernommen
Beitrag von: ae am Februar 07, 2012, 10:25:13 Vormittag
Hallo,
was bedeutet "wird nicht alles übernommen"?
Hast Du bei den Eigenschaften des Textfeldes die Länge über MaxLength begrenzt?
Oder wie soll man sich das vorstellen?
Titel: Antw: Zelle in Userform ist zu klein, es wird nicht alles übernommen
Beitrag von: Beverly am Februar 07, 2012, 13:11:12 Nachmittag
Hi Andreas,

ich nehme an der Fragesteller meint, dass nur 256 Zeichen ins Tabellenblatt übernommen werden, wenn mehr als 256 Zeichen in der TextBox sind. Irgendwie gab es da eine Begrenzung, allerdings soweit ich weiß trat das unter bestimmten Umständen beim Kopieren von einer Tabelle in eine andere auf, nicht bei der Übernahme aus einer TextBox (ich kann mich da allerdings auch irren).

Ich habe das jetzt versucht nachzuvollziehen, allerdings mit negativem Erfolg - es werden alle Zeichen übernommen, auch wenn mehr als 256 in der TextBox sind. Ich habe allerdings nur Excel 2010 und Excel 2003 zur Verfügung.

Bis später,
Karin
Titel: Antw: Zelle in Userform ist zu klein, es wird nicht alles übernommen
Beitrag von: leher am Februar 07, 2012, 14:09:08 Nachmittag
Ich werde mal die Datei mit anhängen. Ich glaube dann ist es verständlicher....

Vielen Dank!!!

Gruß, Leher
Titel: Antw: Zelle in Userform ist zu klein, es wird nicht alles übernommen
Beitrag von: ae am Februar 07, 2012, 15:15:32 Nachmittag
Hallo,
scheint wirklich irgendwie mit 2007 zusammen zu hängen

Ich kann wie auch Karin problemlos in 2003 und 2010 längere Texte übernehmen
Titel: Antw: Zelle in Userform ist zu klein, es wird nicht alles übernommen
Beitrag von: maninweb am Februar 07, 2012, 20:15:21 Nachmittag
Hallo leher...

wie lautet denn der Code, den Du zur Übernahme des Textes verwendest?

Gruß
Titel: Antw: Zelle in Userform ist zu klein, es wird nicht alles übernommen
Beitrag von: Beverly am Februar 07, 2012, 20:42:25 Nachmittag
Hi,

ich weiß nicht, ob es etwas bringt, aber versuche mal anstelle deines Codes diesen zu verwenden:

Sheets("Tabelle2").Range("C24") =TextBox7
Bis später,
Karin
Titel: Antw: Zelle in Userform ist zu klein, es wird nicht alles übernommen
Beitrag von: maninweb am Februar 08, 2012, 07:53:26 Vormittag
Hallo leher...

hatte gestern Deine Datei übersehen. Das Problem liegt wohl an der Format-Funktion, die Du verwendet hattest. Solange Du keine explizite Formatierung des Textes vornehmen möchtest (z.B. Zahlen als Dezimalzahl), brauchst Du den Text nicht explizit formatieren. Die Format Funktion verhält sich bei mir in Excel 2003, 2007 und 2010 gleich. Anbei ein Code mit den Änderungen...
Code: Visual Basic
  1. Private Sub CommandButton1_Click()
  2.  
  3.   Dim erste_freie_Zeile As Long
  4.   Dim letzteZeile As Long
  5.  
  6.   erste_freie_Zeile = Sheets("Tabelle1").Range("A65536").End(xlUp).Offset(1, 0).Row
  7.  
  8.   ThisWorkbook.Worksheets("Tabelle1").Cells(erste_freie_Zeile, 7).Value = TextBox7.Text
  9.  
  10.   letzteZeile = Sheets("Tabelle1").Cells(Rows.Count, 1).End(xlUp).Row
  11.  
  12.   ThisWorkbook.Worksheets("Tabelle2").Range("C24").Value = TextBox7.Text
  13.  
  14. End Sub
  15.  
Empfehlen würde ich zudem, die Zeilenzähler als Long statt Integer zu deklarieren sowie die Eigenschaften, die Du abrufst (Wert der Zelle) explizit anzusprechen; hier dann .Value bei .Cells(...) oder .Range(...).

Gruß
Titel: Antw: Zelle in Userform ist zu klein, es wird nicht alles übernommen
Beitrag von: Beverly am Februar 08, 2012, 11:35:24 Vormittag
Hi,

auf .Value und .Text kann verzichtet werden, weil dies die Standardeigenschaft der Zelle bzw. des Textfeldes ist.

Außerdem würde ich die erste freie Zelle nicht mit Bezug auf Range("A65536") ermitteln, weil man sich damit explizit auf Excel-Versionen vor 2007 festlegt. Universeller und unabhängig von der Excel-Version ist diese Art (für die letzte belegte Zelle in Spalte A):

IIf(IsEmpty(Cells(Rows.Count, 1)), Cells(Rows.Count, 1).End(xlUp).Row, Rows.Count)
Bis später,
Karin
Titel: Antw: Zelle in Userform ist zu klein, es wird nicht alles übernommen
Beitrag von: leher am Februar 13, 2012, 11:42:13 Vormittag
Vielen vielen Dank!!

Sorry für die späte Antwort...

Das mit dem ... = Textbox7.Text ohne Format hat schon gereicht! Das Problem ist also gelöst!

Oh, wie schön:D

Einen schönen Wochenstart,

Gruß,

Leher