Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
748to752
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
748to752
748to752
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

Maximale Zeichenanzahl in Excel

Maximale Zeichenanzahl in Excel
27.03.2006 13:25:35
Andreas
Hallo,
ich lade aus einer Access Datenbank Text in eine Exceltabelle (Excel2002). Jedoch bekomme ich laufend den Laufzeitfehler 1004 bei Datensätze über 911 Textzeichen (selbst getestet).
Meine Frage dazu:
1. Haben Excelzellen eine bestimmtes Limit an Zeichenaufnahme beim Import von Datensätzen?
2. Wenn ich die Formatierung der Zellen von Standard auf Text nehme bekomme ich in einigen Zellen nur das Raute Zeiche angezeigt. An was kann das liegen?
Wenn noch irgendwelche Informationen benötigt werden, schriebt mir.
Danke und Gruss
Andreas

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

Betreff
Datum
Anwender
Anzeige
AW: Maximale Zeichenanzahl in Excel
27.03.2006 13:33:09
ede
hallo andreas,
es gibt eine zeilenbegrenzung, die liegt aber bei 65536, somit ist das nicht dein problem. ohne code kann man auch nicht mehr sagen.
zum 2. liegt es an der zu kleinen spaltenbreite, einfach die spaltenbreite vergrössern!
gruss
AW: Maximale Zeichenanzahl in Excel
27.03.2006 14:40:55
Andreas
Hi ede,
danke für die Antwort. Aber das Problem liegt etwas anders.
Ich habe in einer Access Datenbank ein Tabellenfeld 'DR_Details'. Es ist als varchar(3000) definiert. Natürlich wird das Feld auch mit der Zeichengrösse fast ausgereizt. Dieses Feld importiere ich in Excel mittels VBA, Siehe Codeauszug
Definition Excel Zellen
-----------------------
Const intCol_DRID = 1
Const intCol_Details = 18
Code Auszug
-----------
strSQL = "Select DR_ID, DR_Details, from V_Excel_DealRenewals"
Set rs = con.Execute(strSQL)
i = 6
Do While Not rs.EOF
shWorkSheet.Cells(i, intCol_DRID) = rs!DR_ID
shWorkSheet.Cells(i, intCol_Details) = rs!DR_Details
i = i + 1
rs.MoveNext
Loop
Begrenze ich die Länge des zu importierenden Textes auf 900 Zeichen
shWorkSheet.Cells(i, intCol_Details) = left(rs!DR_Details, 900)
habe ich keine Probleme mit dem Import. Jedoch ist das nicht das Ziel
Mein Problem ist jetzt, wie bekomme ich alle Zeichen nach Excel importiert?
Danke und Gruss
Andreas
Anzeige
AW: Maximale Zeichenanzahl in Excel
27.03.2006 14:48:15
ede
dann liegt es wahrscheinlich an der länge des feldes,
klappt es so, wenn diu das feld in 4 teile aufteilst?
i = 6
Do While Not rs.EOF
shWorkSheet.Cells(i, intCol_DRID) = rs!DR_ID
shWorkSheet.Cells(i, intCol_Details) = mid(rs!DR_Details,1, 500)
shWorkSheet.Cells(i, intCol_Details+1) = mid(rs!DR_Details,501, 500)
shWorkSheet.Cells(i, intCol_Details+2) = mid(rs!DR_Details,1001, 500)
shWorkSheet.Cells(i, intCol_Details+3) = mid(rs!DR_Details,1501, 500)
i = i + 1
rs.MoveNext
Loop
gruss
AW: Maximale Zeichenanzahl in Excel
27.03.2006 17:04:45
Andreas
Hi ede,
der Gedanke ist gut. jedoch sollte der gesamte Text in einer Zelle erscheinen. Habe es über
shWorkSheet.Cells(i, intCol_Details) = mid(rs!DR_Details,1, 500)
shWorkSheet.Cells(i, intCol_Details) = intCol_Details & mid(rs!DR_Details,501, 500)
shWorkSheet.Cells(i, intCol_Details) = intCol_Details & mid(rs!DR_Details,1001, 500)
shWorkSheet.Cells(i, intCol_Details) = intCol_Details & mid(rs!DR_Details,1501, 500)
versucht (php Zusammenfügen von Strings), aber da wird nur alles überschrieben.
Kann es vielleicht auch am Zusammenbau meines SQL Strings oder der Datendefinition in Access liegen?
In Access heisst das Feld
DR_Details varchar(3000)
Selbst die Definition mit nur text funktionierte nicht.
Beim Schreiben des Feldes benutze ich folgenden Befehl
1. Zuweisen des des Zellinhaltes
strDR_Details = shWorkSheet.Cells(i, intCol_Details)
2. SQL String aufbauen (INSERT oder UPDATE kein Problem)
strSQL = "Insert into DR_DealsRenewals DR_ID, DR_Details VALUE (?,?)"
3. Zuweisen des Inhaltes
With objCmd
...
If strDR_Details "" Then
.Parameters.Append .CreateParameter("@b", adVarChar, adParamInput, 3000, strDR_Details)
Else
.Parameters.Append .CreateParameter("@b", adVarChar, adParamInput, 3000, Null)
END IF
...
End With
Ich habe auch schon 'adLongVarChar' und 'adTypeText' versucht, aber immer wieder der selbe Fehler beim Download aus Access.
Auslesen tu ich über eine angelegt View, welche aber die identischen Felder aus der Datenbanktabelle beinhaltet (Verweis).
Ich bin mit meinem Latein am Ende.
Vielleicht weis auch noch jemand anders Rat.
Viele Grüsse
Andreas
Anzeige

94 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige