Excel: Einzelnes Tabellenblatt als Text-Datei speichern

Hallo zusammen! 

Ich habe eine Excel-Datei mit mehreren Tabellenblättern, die untereinander verknüpft sind. Ein Blatt ist ein Formular, in das Werte eingegeben werden, anhand derer aus anderen Tabellenblättern automatisch Werte in andere Zellen dieses Blattes eingesetzt werden. Das funktioniert auch tadellos.

Jetzt habe ich ein zusätzliches Tabellenblatt angelegt, in dem aus Zell-Inhalten der anderen Blätter ein HTML-Code generiert wird. Auch das funktioniert.

Der weitere Weg soll nun sein, daß dieses Blatt als reine Text-Datei gespeichert wird, manuell auf einen Server hochgeladen wird und via PHP in die entsprechende Seite eingebunden wird. Hier wird’s jetzt etwas komplizierter. Über „Speichern unter“ kann ich zwar das Blatt speichern, die Inhalte der Zellen werden allerdings in Anführungszeichen gesetzt; kommen in der „Formale“ Anführungszeichen vor, werden diese verdoppelt. Nur Text, der direkt eingegeben wird, bleibt auch so. Die einzige Einstellung, die ich gefunden hab, in der tatsächlich alles so gespeichert wird, wie es auch dargestellt wird, ist „Formatierter Text (Leerzeichen getrennt)“. Diese Datei erhält dann aber automatisch die Endung „.prn“. Um die auf die gewünschte Endung umzubenennen muß entweder Excel geschlossen werden (da die Datei ja da noch benutzt wird) oder die Datei erst mal kopiert und dann umbenannt werden.

Das ist zwar alles machbar, aber doch recht aufwendig.

Meine konkrete Frage wäre nun also: Wie kann ich aus Excel ein einzelnes Tabellenblatt so abspeichern, daß ich den Dateinamen inclusive Endung frei wählen kann und der Text auch nur so abgespeichert wird, wie er im sheet dargestellt wird - ohne zusätzliche Anführungszeichen? 

Benutzt wird übrigens Excel 2007.

Vielen Dank im voraus !

Hallo Holger,

wie hast du das denn geschafft, dass da Anführungszeichen in der Text-Datei auftauchen.
Ich habe eben mal versuchshalber eine Excel-Tabelle unter sämtlichen zur Verfügung stehenden Textformaten gespeichert. Bei keiner gibt’s Anführungszeichen. Die Unterschiede sind nur die Trennzeichen zwischen Zellen bzw. Zeilen.
Die Formate „Text (Tabstopp-getrennt)“ und „Text (MS-DOS)“ erzeugen bei mir beide das gleiche Format: Zellentrennung durch TABS, richtiger Zeilenforschub, keine Anführungszeichen.
Das ganze habe ich mit „Datei - Speichern unter…“ ezeugt. Hast du das irgendwie anders gamacht?
Wenn’s garnicht klappen sollte, könnte ich dir noch mit einem Makro unter die Arme greifen. Dazu hätte ich dann aber gerne eine Beispielmappe.

Gruß, Andreas

Hallo Andreas,

Eine Zelle hat z.B. diesen Inhalt:

=WENN(Tab1!A26"";Tab1!A26&". R. - Nr."&Tab1!B26&" › „&Tab1!C26&“

  • Neuer Fahrer: "&Tab1!E26&"
    „;“")

Wobei Tab1!A7 selbst wiederum einen berechneten Wert enthält, aber das dürfte ja keine Rolle spielen.

Speicher ich das Sheet als „unicode“ oder als "Text (MSDos) kommt folgendes Ergebnis: 

**"1. R. - Nr.3 › Pretty Dark

  • Neuer Fahrer: Fahrer
    "**

Speicher ich als „Text (Leerzeichen getrennt)“ erhalte ich

**1. R. - Nr.3 › Pretty Dark

  • Neuer Fahrer: Fahrer**

'nabend Holger,

ja, du hast Recht: Wenn ich es mit deinem Zellinhalt speichere, schreibt Excel auch bei mir die Anführungszeichen. Wenn ich es mit „einfacherem“ Text mache („abc“ oder „a b c“), gibt’s keine Anführungszeichen. Irgendwelche Zeichen in deinem Text veranlassen Excel dazu, darauf „hinweisen“ zu müssen, dass der ganze Text aus einer Zelle stammt. Deswegen die Anführungszeichen.
Aber selbst wenn wir jetzt rausfinden, welche Zeichen das sind, hilft es nicht viel weiter: Du brauchst die Zeichen ja in der txt-Datei. Man kann sie also auch nicht durch irgend was anderes ersetzten.
Mein Vorschlag: Ich schreibe dir einen Makro, der das ganze ohne Anführungszeichen erledigt. Dazu müsste ich wissen:

  • in welchen Zellen steht dein Text. Sind das nur alle Zellen in Spalte A, untereinander, oder gibt’s noch weiter Zellen?
  • Gibt es Zellen, die nicht mit gespeichert werden sollen?

Gruß, Andreas

Update
Hallo Holger,

ich habe noch ein bisschen gestöbert: Die Anführungszeichen hängen mit dem Listentrennzeichen zusammen, dass in Windows eingestellt ist: Z.B. bei Win7 findest du das in der Systemsteuerung - Region und Sprache - Reiter Formate - Weitere Einstellungen.
Hier gibt es das Listentrennzeichen. Es stand bei mir standardmäßig auf Semikolon.
Excel erkennt beim Speichern als txt-Datei, dass im Text solche Zeichen vorhanden sind. Damit hier keine Trennung in mehrere Blöcke erfolgt, wird das ganze in Anführungszeichen gesetzt, damit es als Einheit gilt.
Wenn du das Listentrennzeichen auf ein Zeichen setzt, das im Text nicht vorkommt, z.B. \
dann gibts auch keine Anführungszeichen.
Aber ich gebe zu, das ist keine sehr elegante Methode. Denn da du jetzt systemweit was änderst, könnten andere Programme Probleme kriegen. Also, mein Angebot weiterhin: Ein Makro.

Gruß, Andreas