Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender

Forumthread: Texte mit mehr als 255 Zeichen

Texte mit mehr als 255 Zeichen
06.12.2007 18:20:00
Joseph
Hallo an Alle!
Ich möchte per VB (nicht VBA) eine EXCEL Tabelle erstellen und dabei längere Texte übergeben. Warum auch immer, werden aber nur die ersten 255 Zeichen angezeigt. Folgender Code soll das Ganze demonstrieren:

Dim xlAnw As Object
Dim wrkbk As Object
Dim wrksh As Object
Set xlAnw = CreateObject("excel.application")
Set wrkbk = xlAnw.WorkBooks.Add
Set wrksh = xlAnw.Worksheets(1)
Dim i As Integer
Dim s As String
For i = 1 To 100
s = s & Len(s) & String("50", "-")
Next
wrksh.Range("A1").Value = s
Call wrkbk.Saveas("c:\temp\test.xls", 39, , , , , 3, 1, True)

Office 2007 wird verwendet.
Für jeden hilfreichen Tipp bin ich dankbar!
Jo

Anzeige

4
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Texte mit mehr als 255 Zeichen
06.12.2007 21:42:00
MichaV
Hallo,
schon wrksh.Range("A1").Text = s versucht?
Warum schreibst Du eigentlich nicht gleich s=String(99999,"-")?
Gruß- Micha
PS: Rückmeldung wäre nett.

AW: Texte mit mehr als 255 Zeichen
07.12.2007 08:04:00
Joseph
Guten Morgen Micha,
1.) Nein habe ich nicht probiert, da das Text Property Read-Only ist :-) Aber Danke für den Tipp.
2.) Das sollte ein exemplarische Bsp sein. Mit diesem String ist die Länge sofort zu erkennen. Bei 99999 '-' Zeichen ist die tatsächliche Länge nur sehr schwer zu schätzen. In der tatsächlichen Anwendung werden ganz andere Texte exportiert.
Jo

Anzeige
AW: Texte mit mehr als 255 Zeichen
07.12.2007 23:46:09
MichaV
Hallo,
zu 1) wusste ich nicht, habs gerade mal getestet, nun weiß ich es :o)
zu 2) die Länge eines Textes in Excel kannst Du noch schneller und ganz ohne Abschätzen mit =Länge() bestimmen ;o)
Aber keine Ahnung, wie Du mehr als 255 Zeichen reinkriegst. Ich lass die Frage mal offen.
Gruß- Micha

Anzeige
AW: Texte mit mehr als 255 Zeichen
10.12.2007 15:10:05
Wolli
Wissen weiß ich's auch nicht, aber es verhält sich ja auch so, dass man beim Kopieren eines kompletten Blattes nur 255 Zeichen pro Zelle kopiert werden. Kopiert man die Inhalte (Zellbereiche), geht auch mehr.
Userbild
Auch ich lasse die Frage offen. Gruß, Wolli
Anzeige
;
Anzeige
Anzeige

Infobox / Tutorial

Texte mit mehr als 255 Zeichen in Excel


Schritt-für-Schritt-Anleitung

Um Texte mit mehr als 255 Zeichen in Excel zu verarbeiten, kannst Du folgendes Vorgehen nutzen:

  1. Öffne Visual Basic (VB): Stelle sicher, dass Du eine Excel-Version hast, die VB unterstützt, z.B. Office 2007.
  2. Erstelle ein neues Excel-Dokument:
    Dim xlAnw As Object
    Dim wrkbk As Object
    Dim wrksh As Object
    Set xlAnw = CreateObject("excel.application")
    Set wrkbk = xlAnw.WorkBooks.Add
    Set wrksh = xlAnw.Worksheets(1)
  3. Füge den langen Text hinzu: Verwende eine Schleife, um einen langen String zu generieren.
    Dim i As Integer
    Dim s As String
    For i = 1 To 100
       s = s & Len(s) & String(50, "-")
    Next
    wrksh.Range("A1").Value = s
  4. Speichere die Arbeitsmappe:
    Call wrkbk.Saveas("c:\temp\test.xls", 39, , , , , 3, 1, True)
  5. Schließe Excel: Vergiss nicht, das Excel-Anwendungsobjekt zu schließen.

Häufige Fehler und Lösungen

  • Problem: Der Text wird nicht korrekt angezeigt.

    • Lösung: Stelle sicher, dass Du das richtige Property verwendest. Anstatt .Value kannst Du auch .Text verwenden, um den Text anzuzeigen. Beachte jedoch, dass das Text-Property in Excel Read-Only ist.
  • Problem: Nur 255 Zeichen werden kopiert.

    • Lösung: Beim Kopieren von Zellen wird oft nur ein Teil des Textes (255 Zeichen) übernommen. Achte darauf, dass Du ganze Zellbereiche kopierst, wenn Du mehr als 255 Zeichen benötigst.

Alternative Methoden

Wenn Du eine Alternative zur Verwendung von VB suchst, kannst Du auch die Excel-Funktion =LÄNGE() verwenden, um die Anzahl der Zeichen in einer Zelle zu ermitteln. Dies ist nützlich, um Texte mit mehr als 255 Zeichen zu überprüfen.


Praktische Beispiele

Hier ist ein einfaches Beispiel, um den Unterschied zwischen der Begrenzung auf 255 Zeichen und längeren Texten zu demonstrieren:

  • Beispiel für 255 Zeichen:

    Dim shortText As String
    shortText = String(255, "A")
    wrksh.Range("B1").Value = shortText
  • Beispiel für mehr als 255 Zeichen:

    Dim longText As String
    longText = String(500, "B")
    wrksh.Range("B2").Value = longText

Tipps für Profis

  • Nutze Zellbereiche: Wenn Du mit großen Texten arbeitest, verwende Zellbereiche anstelle von einzelnen Zellen, um die Zeichenbegrenzung von 255 zu umgehen.
  • Speichere in neueren Formaten: Überlege, die Datei im .xlsx-Format zu speichern, um mehr Flexibilität bei der Verarbeitung von Texten zu erhalten.
  • Vermeide unnötige Schleifen: Wenn Du große Datenmengen handhabst, reduziere die Anzahl der Schleifen, um die Leistung zu optimieren.

FAQ: Häufige Fragen

1. Warum kann ich nur 255 Zeichen in eine Zelle eingeben?
Das liegt an der Art und Weise, wie Excel Text in bestimmten Formaten behandelt. Achte darauf, die richtigen Methoden zu verwenden, um längere Texte zu speichern und anzuzeigen.

2. Welche Excel-Version benötige ich für VB?
Visual Basic wird in den meisten modernen Versionen von Excel unterstützt, einschließlich Office 2007 und neuer. Stelle sicher, dass Du die richtige Version verwendest, um die gewünschten Funktionen zu nutzen.

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige