Wie lassen sich mit phpSpreadsheet bestimmte Zellen aus einer Excel-Datei auslesen und in einer Datenbank speichern?

Antwort vom

Um mit [PhpSpreadsheet](https://phpspreadsheet.readthedocs.io/) einzelne Zellen aus einer Excel-Datei auszulesen und in einer Datenbank zu speichern, gehst du typischerweise wie folgt vor: **1. PhpSpreadsheet installieren** Am einfachsten per Composer: ```bash composer require phpoffice/phpspreadsheet ``` **2. Excel-Datei laden und Zellen auslesen** Beispiel für das Auslesen bestimmter Zellen (z.B. A1 und B2): ```php use PhpOffice\PhpSpreadsheet\IOFactory; $spreadsheet = IOFactory::load('deine_datei.xlsx'); $worksheet = $spreadsheet->getActiveSheet(); $wertA1 = $worksheet->getCell('A1')->getValue(); $wertB2 = $worksheet->getCell('B2')->getValue(); ``` **3. Verbindung zur Datenbank herstellen** Beispiel mit PDO (MySQL): ```php $pdo = new PDO('mysql:host=localhost;dbname=deinedb', 'benutzer', 'passwort'); ``` **4. Werte in die Datenbank einfügen** Angenommen, du hast eine Tabelle `meinetabelle` mit den Spalten `spalte1` und `spalte2`: ```php $sql = "INSERT INTO meinetabelle (spalte1, spalte2) VALUES (:wertA1, :wertB2)"; $stmt = $pdo->prepare($sql); $stmt->execute([ ':wertA1' => $wertA1, ':wertB2' => $wertB2 ]); ``` **Zusammengefasstes Beispiel:** ```php require 'vendor/autoload.php'; use PhpOffice\PhpSpreadsheet\IOFactory; // Excel-Datei laden $spreadsheet = IOFactory::load('deine_datei.xlsx'); $worksheet = $spreadsheet->getActiveSheet(); // Zellen auslesen $wertA1 = $worksheet->getCell('A1')->getValue(); $wertB2 = $worksheet->getCell('B2')->getValue(); // Datenbankverbindung $pdo = new PDO('mysql:host=localhost;dbname=deinedb', 'benutzer', 'passwort'); // In Datenbank speichern $sql = "INSERT INTO meinetabelle (spalte1, spalte2) VALUES (:wertA1, :wertB2)"; $stmt = $pdo->prepare($sql); $stmt->execute([ ':wertA1' => $wertA1, ':wertB2' => $wertB2 ]); ``` **Hinweise:** - Passe Dateinamen, Zelladressen, Datenbankverbindung und Tabellennamen an deine Anforderungen an. - Für größere Datenmengen empfiehlt sich ein Batch-Insert oder Transaktionen. Weitere Infos findest du in der [PhpSpreadsheet-Dokumentation](https://phpspreadsheet.readthedocs.io/en/latest/).

Verwandte Fragen

Wie lese ich mit phpSpreadsheet gezielt Felder aus einer Excel-Datei aus und speichere sie in einer Datenbanktabelle?

Um mit PhpSpreadsheet bestimmte Felder aus einer Excel-Datei auszulesen und in eine Datenbanktabelle zu speichern, gehst du typischerweise wie folgt vor: 1. PhpSpreadsheet installieren Am einfachste...

Kann ich mit PhpSpreadsheet Excel-Dateien auslesen und Daten in eine Datenbank speichern?

Ja, mit PhpSpreadsheet kannst du Excel-Dateien (z.B. .xlsx oder .xls) auslesen und die enthaltenen Daten anschließend in eine Datenbank speichern. PhpSpreadsheet bietet Funktionen, um Excel-Date...

Wie prüfe ich in PHP8, ob ein Datenbankwert nur aus Zahlen und Punkt besteht?

Ja, das kannst du mit PHP 8 herausfinden. Du kannst dazu reguläre Ausdrücke (Regular Expressions) verwenden. Mit der Funktion pregmatch() prüfst du, ob ein String nur aus Ziffern und ge...

Kann man mit PHP8 prüfen, ob der Wert einer Datenbankspalte vom Typ float ist?

Mit PHP8 kannst du nicht direkt aus PHP heraus feststellen, ob der Wert einer Datenbankspalte vom Typ float ist, da PHP beim Abrufen von Daten aus einer Datenbank (z.B. mit PDO oder MySQLi) die Typinf...

Wie ermittle ich mit PhpSpreadsheet die Nummer der letzten Zeile mit Daten beim Auslesen einer Excel-Datei?

Ja, mit PhpSpreadsheet kannst du die Nummer der letzten Zeile mit Daten in einem Arbeitsblatt ermitteln. Dafür gibt es die Methode getHighestRow() des Worksheet-Objekts. Sie gibt die höchste...

Wie lese ich mit phpSpreadsheet eine Excel-Datei aus und zeige sie als HTML im Browser an?

Um mit PhpSpreadsheet eine Excel-Datei auszulesen und deren Inhalt als HTML im Browser anzuzeigen, gehst du wie folgt vor: 1. Installation von PhpSpreadsheet (falls noch nicht geschehen): bash compos...

Wie kann ich in PHP8 Excel-Dateien erstellen?

In PHP8 kannst du Excel-Dateien am besten mit der Bibliothek PhpSpreadsheet erstellen. PhpSpreadsheet ist der Nachfolger von PHPExcel und unterstützt das Erstellen, Bearbeiten und Auslesen von Ex...

Ist Shapes("Rechteck 1").Visible = True korrekt in Excel-VBA?

Der Ausdruck Shapes("Rechteck 1").Visible = True ist in Excel-VBA nicht korrekt, da das Visible-Eigenschaftsmerkmal für Shapes in Excel-VBA nicht existiert. In Excel-VBA steuerst du d...

Wie füge ich mit PHPSpreadsheet eine Summenformel in eine bestimmte Zelle ein?

Um mit PHPSpreadsheet in einer bestimmten Zelle eine Summenberechnung einzufügen, kannst du eine Excel-Formel in die gewünschte Zelle schreiben. Das geht so: php use PhpOffice\PhpSpreadshee...

Ist folgender Excel-VBA-Code korrekt: HeightPt = Rows("4:" & Cells(49,19).Row).Height?

Der gezeigte Code ist in Excel-VBA nicht korrekt und führt zu einem Fehler. Das Problem liegt in der Syntax innerhalb der Rows-Funktion. Hier die Analyse: Dein Code: vba HeightPt = Rows("4:...