Zelle mit mehr als 255 Zeichen per VBA kopieren

17/07/2008 - 20:06 von Rainer Denzer | Report spam
Hallo zusammen,

habe ein Programm (Excel 2003) welches Dateien nacheinander einliest und
bestimmte Zellen in eine andere Datei kopiert.

Wenn nun in einer Zelle der Quelldatei mehr als 255 Zeichen (vermute ich
, ich hab´s nicht gezàhlt :-)) sind, dann funktioniert der folgende
Befehl nicht mehr.

Workbooks(Mainfile).Worksheets("Liefergegenstand").Range("k" &
LieferPrjPos) = .Range("M" & i)

Kennt jemand eine Alternative die funktioniert?

Schönen Gruß
Rainer
 

Lesen sie die antworten

#1 Alexander Wolff
18/07/2008 - 08:45 | Warnen spam
Die Tastatur von Rainer Denzer wurde wie folgt gedrückt:
habe ein Programm (Excel 2003) welches Dateien nacheinander einliest
und bestimmte Zellen in eine andere Datei kopiert.

Wenn nun in einer Zelle der Quelldatei mehr als 255 Zeichen (vermute
ich , ich habŽs nicht gezàhlt :-)) sind, dann funktioniert der
folgende Befehl nicht mehr.

Workbooks(Mainfile).Worksheets("Liefergegenstand").Range("k" &
LieferPrjPos) = .Range("M" & i)

Kennt jemand eine Alternative die funktioniert?



Zwei unschöne Alternativen fallen mir ein, die ich aber nicht getestet habe:

1. .Copy statt Deiner Direktzuweisung oder
2. Unterroutine schreiben, die hàppchenweise mittels MID jeweils 200 Zeichen
anhàngt, falls es mehr als 200 sind.

1. scheint mir dabei erfolgversprechender, weil VBA dabei eine
Excel-Funktionalitàt steuert, wàhrend 2. evtl. aufgrund von
VBA-Verkettungsoperationen auf den gleichen Hammer làuft.

Ich habe die Erfahrung gemacht (xl2000: Es müßte jedoch bis xl2003 ebenso
gelten), dass Fehler auftreten, wenn ein Argument einer VBA-Function lànger
als 255 Zeichen ist. Ist der Funktionswert selbst lànger als 255 Zeichen,
tritt kein Fehler auf. Diese Aussagen sind mit Vorsicht zu genießen!

Nicht mehr reproduzierbar ist folgende Beobachtung: Ist die Datei noch nicht
allzu groß, funktioniert auch das mit dem Argument noch! Als ich aber
testweise versuchte, in der Datei ab Auftreten des Fehlers Daten
"wegzuholzen", half mir das nicht mehr. Deshalb muss man davon ausgehen,
dass es vorher nur zufàllig FUNKTIONIERTE und dass es normalerweise NICHT
FUNKTIONIERT.
Moin+Gruss Alexander - MVP for MS Excel - www.xxcl.de - mso2000sp3 --7-2

Ähnliche fragen