Hallo zusammen,
ich habe ein Problem, bei dem ich absolut nicht weiterkomme, obwohl ich denke, dass es eigentlich total einfach ist.
Ich möchte mit Word einen Serienbrief erstellen. Dazu benötige ich natürlich die Daten der Anschrift in einer Tabellenform.
Aus einer webbasierten Anwendung kann ich mir eine Adressenliste als csv ausgeben lassen.
Ich glaube aber, dass es eine normale Textdatei ist...
Sie ist wie folgt aufgebaut:
Also jeder einzelne Wert ist durch ein Zeilenumbruch getrennt. Es ist aber kein Trennzeichen vorhanden.
Damit kann ich erstmal nichts anfangen. Nun war meine Idee den Inhalt so abzuändern, dass Word die einzelnen, zusammenhängenden Datensätze erkennt.
Meine "Wunsch csv" würde dann wie folgt aussehen:
Ich bin schon ewig am rumprobieren, aber komme einfach nicht zum Ziel. Wäre super, wenn jemand helfen kann.
Folgendes habe ich bisher in verschiedenen Varianten versucht:
Die Ausgabe ist leider nicht wie gewünscht sondern sieht wie folgt aus:
Ich habe auch schon mit file_get_contents und file_put_contents rumprobiert. Das Ergebnis war allerdings fast identisch.
Vielen Dank für die Hilfe im voraus.
ich habe ein Problem, bei dem ich absolut nicht weiterkomme, obwohl ich denke, dass es eigentlich total einfach ist.
Ich möchte mit Word einen Serienbrief erstellen. Dazu benötige ich natürlich die Daten der Anschrift in einer Tabellenform.
Aus einer webbasierten Anwendung kann ich mir eine Adressenliste als csv ausgeben lassen.
Ich glaube aber, dass es eine normale Textdatei ist...
Sie ist wie folgt aufgebaut:
Code:
Name 1 Straße 1 Ort 1 Name 2 Straße 2 Ort 2 Name 3 Straße 3 Ort 3
Damit kann ich erstmal nichts anfangen. Nun war meine Idee den Inhalt so abzuändern, dass Word die einzelnen, zusammenhängenden Datensätze erkennt.
Meine "Wunsch csv" würde dann wie folgt aussehen:
Code:
Name 1; Straße 1;Ort 1 Name 2; Straße 2;Ort 2 Name 3; Straße 3;Ort 3
Folgendes habe ich bisher in verschiedenen Varianten versucht:
PHP-Code:
// Liest die csv-Datei ein und erstellt daraus ein Array
$csv = file($new_path);
// Zählt die Elemente im Array
$anzahl = count($csv);
// Zählpunkte für Schleife
$i = 0;
/////////////////////////////////////////////////////////////////////////
//////////////////// csv umwandeln //////////////////////////////////////
/////////////////////////////////////////////////////////////////////////
$adressen = fopen("Adressen.csv", "w+");
fwrite($adressen, "Name;Straße;Ort\r\n");
while ($i < $anzahl) {
fwrite($adressen, $csv[$i].";");
fwrite($adressen, $csv[$i+1].";");
fwrite($adressen, $csv[$i+2]."\r\n");
$i = $i + 3;
}
Code:
Name;Straße;Ort Name 1 ;Straße 1 ;Ort 1 Name 2 ;Straße 2 ;Ort 2 Name 3 ;Straße 3 ;Ort 3
Vielen Dank für die Hilfe im voraus.
Kommentar