Normaler Text zu Fliesstext in Zelle

Hi,

jemand unterhält einen Webshop welcher sich mit der Warenwirtschaft synchronisiert. Um neue Produkte einzupflegen werden alle Daten in eine Excel-Datei geschrieben (ja, das geht sicher auch anders, aber erstmal ist das so). So auch der Produkttext. Dieser wird in Windows Notepad erstellt und sieht dann so aus (Bsp.):

XP3000 - Ihr tolles Gerät

Der XP 3000 ist das beste Gerät auf dem Markt. Er ist robust, leicht und überall einsetzbar.
Durch seinen niedrigen Preis ist er für jeden erschwinglich.

Eigenschaften:

  • leicht, robust, günstig

  • sieht gut aus!

Technische Daten:

  • Klasse: XM3

  • Frequenz: 300 MHz

Der Text muss in Notepad so bleiben weil er auch noch für andere Anwendungen gebraucht wird. ABER… die Warenwirtschaft braucht ihn als Fliesstext um ihn in den Shop einlesen zu können. In Excel muss er also das Format "XP3000 - Ihr tolles Gerät

Der XP 3000 ist das beste Gerät auf dem Markt. Er ist robust, leicht und überall einsetzbar.
Durch seinen niedrigen Preis ist er für jeden erschwinglich.

Eigenschaften:

  • leicht, robust, günstig
    …" haben.

Hierzu muss man den Text in Excel manuell bearbeiten was aber extrem zeitraubend ist. Frage daher: Wie sage ich Excel, dass es jeden Text den ich in diese Zelle kopiere automatisch in einen Fliesstext umwandelt?

Danke für Tips sagt 

K

Hallo Kasi,

wenn dein umgebrochener Text z.B. in A1 steht, dann schreib in B1

=WECHSELN(WECHSELN(A1;ASC(13);"");ASC(10);"")

Gruß, Andreas

Hi Andreas,

da tut sich in B1 dann nichts. Also Formel in B1 geschrieben, Text in A1 kopiert und B1 bleibt leer.

Gruss
K

da tut sich in B1 dann nichts. Also Formel in B1 geschrieben,
Text in A1 kopiert und B1 bleibt leer.

Hallo Kasi,

wie kriegst du eigentlich den mehrzeiligen Text aus Notepad in EINE Zelle, mir gelingt das nicht :frowning:

Die Formel von Andreas hätte von mir sein können, sehe da nix falsches. Aargs, grad nachgeschaut, logo, Andreas ist noch im Vba-Modus *lächel*.
Ersetze mal ASC durch Zeichen…

Wenn das auch nix bringt lade mal die Mappe hoch mit fileupload, siehe FAQ:2606

Gruß
Reinhard

Hi Reinhard,

wie kriegst du eigentlich den mehrzeiligen Text aus Notepad in EINE Zelle …

Text in die Zelle kopieren und dann „Zeilenumbruch“ deaktivieren.

Ersetze mal ASC durch Zeichen…

Das war`s! Klappt! Hoffe das Warenwirtschaftsprogramm erkennt das. Wie kommt man auf solche Formeln? :wink:

Danke an Euch beide!!!

Gruss
K

Das ist ja komisch
Hallo Reinhard,

du hast natürlcih recht: Ich war noch in VBA. Aaaaaber:
Ich habe es heute morgen mit ASC in Excel2007 versucht. Da hatte es geklappt.
Nach dem Lesen deines Postings habe ich es jetzt hier mit Excel2010 versucht. Klappt auch.
Da Excel ja die Syntax nicht angemotzt hat, hab ich mal in der Hilfe für ASC geschaut. Gibt’s wirklich: http://www.pic-upload.de/view-22469476/asc.jpg.html
Jetzt frag ich mich, wieso diese Funktion bei mir CR und LF gelöscht hat.
Dass bei Kasi die Zelle B1 völlig leer blieb, müsste andere Gründe haben - welche?

Gespannte Grüße,
Andreas

Nachtrag und halbe Lösung
Ich nochmal,

hab mir eben mal angeschaut, was denn so wirklich in den Zellen steht, mit

Sub tt()
 For i = 1 To Len(ActiveCell)
 MsgBox Asc(Mid(ActiveCell, i, 1))
 Next
End Sub

In A1 habe ich eingegeben:
a ALT-Eingabetaste b
Dann stehen a und b schön untereinander.
Die Sub gibt dann
97 10 98
aus.
Dann hab ich bin B1 geschrieben:

=ASC(A1)

Siehe da, a und b stehen nebeneinander.
Dann habe ich die Sub über diese Zellen laufenlassen:
97 10 98
Hä? Wieso kein Zeilenumbruch??
Und dann ist mir was gedämmert: Wenn man in A1 etwas mit ALT-Eingabetaste schreibt, wird wohl automatisch das Format auf Zeilenumbruch gestellt. Wenn man den Inhalt per Formel =A1 in eine andere Zelle überträgt, hat diese Zelle aber noch keinen Zeilenumbruch im Format. Also bleibt es bei „ab“, auch wenn Chr(10) mit drin steht.
Die Funktion ASC war hier also völlig wirkungslos, nur das Format der Zelle war nicht auf Zeilenumbruch.
Wieso die Zellen bei Kasi allerdings völlig leer blieben, ich mir immer ncoh schleierhaft.

Gruß, Andreas

Hallo Andreas,

Ich habe es heute morgen mit ASC in Excel2007 versucht. Da
hatte es geklappt.
Nach dem Lesen deines Postings habe ich es jetzt hier mit
Excel2010 versucht. Klappt auch.
Da Excel ja die Syntax nicht angemotzt hat, hab ich mal in der
Hilfe für ASC geschaut. Gibt’s wirklich:
http://www.pic-upload.de/view-22469476/asc.jpg.html

Hätte ich nie gedacht aber in der Tat, ASC() gibt es schon in XL 2000. Genauso wie bei deiem Hilfeauszug zum Umwandeln von Doppel-Byte in Einzel-Byte.
Irschendwie klingt das nach chinesichen Buchstaben oder son Kram, da kenne ich mich nicht aus.

Jetzt frag ich mich, wieso diese Funktion bei mir CR und LF
gelöscht hat.

Scheinbar reagiert ASC() wie Zeichen() *mutmaß*

Dass bei Kasi die Zelle B1 völlig leer blieb, müsste andere
Gründe haben - welche?

Anfangs dachte ich Kasi hätte verschwiegen daß die Fehlermeldung #NAME kommt wegen ASC(). Da ASC() akzeptiert wird weiß ich nada nunca und noch weniger :smile: Deine Formel ist doch einfach, da muß A1 erscheinen, entweder so wie es ist oder halt mit 0D und 0A. Aber nix kapiere ich nicht.

Beim Wildrumraten kam ich auf eine einzige Möglichkeit, Excel interpretiert Wechseln(a1;asc(10);"") als Wechseln(a1;"*";"")

Du müßtest erkennen können daß ich nicht die geringste Ahnung habe was da seltsames läuft.

Gruß
Reinhard