Ich habe ein Skript, das eine Reihe von Leistungsmetriken für einen Computer in eine CSV-Datei ausgibt. Das Excel führt eine grundlegende Statistikprüfung auf Standardabweichung usw. durch.
Ich weiß, dass Sie CSV-Dateien in Excel importieren können, aber ich versuche, diese Daten dynamisch in mein Excel-Modell einzulesen, ohne sie jedes Mal neu importieren und modellieren zu müssen.
Gibt es eine Möglichkeit, eine Zelle / Tabelle auf eine externe CSV-Datei zu verweisen, ohne sie jedes Mal neu zu importieren?
Antworten:
Am einfachsten ist es, die Daten in Access oder SQL Express zu importieren und dann die Datenverbindungsfeatures und -funktionen in Excel zu verwenden. Nach der Ersteinrichtung müssen Sie nur auf Alle aktualisieren klicken, um die Daten abzurufen und die Werte neu zu berechnen.
Sie können die CSV-Datei mit der Datenverbindungsfunktion direkt importieren, sie soll jedoch die Daten einlesen und sie einem Arbeitsblatt hinzufügen. Dies funktioniert, solange Sie es in ein sekundäres Arbeitsblatt importieren und Ihre Formeln und Berechnungen auf einem anderen Blatt belassen. Wenn Sie mit dieser Methode auf "Aktualisieren" klicken, werden Sie nach dem Dateinamen gefragt und anschließend mit denselben Einstellungen wie ursprünglich importiert. Diese Methode ist bei großen Datenmengen normalerweise auch langsamer oder unbrauchbar.
quelle
Windows
Sie können auch Power Query verwenden , um auf etwas flexiblere Weise dasselbe zu erreichen wie in der Antwort von @ andy-lynch .
Siehe unten animiertes GIF für eine Vorschau:
Mac OS
Power Query ist für MacOS nicht verfügbar. Der Excel-Dialog "Aus Text" zum Öffnen von Dateien unter MacOS akzeptiert keine URL (mindestens ab Version 15.33).
Um eine solche Verbindung herzustellen, müsste man zunächst eine Web-Abfragedatei (.iqy) erstellen, wie in diesem Handbuch erläutert , und diese dann mit dem Menübefehl "Daten -> Externe Daten abrufen -> Gespeicherte Abfrage ausführen " importieren.
quelle
Die Frage lautet: "Wie verweise ich auf Daten in einer CSV-Datei?
Mein Weg wäre, die CSV-Datei auszuschneiden und ein Makro mit VBA und ADO zu verwenden, das die Daten empfängt und sie direkt in ein Arbeitsblatt in Excel schreibt. Jede ODBC-kompatible Datenbank kann Ihre Quelle sein.
Excel 2010 verfügt über Daten >> Externe Daten abrufen - aus verschiedenen Datenquellen. Ich ziehe es jedoch vor, meinen eigenen Code zu schreiben, da ich die absolute Kontrolle habe und die Ergebnisse im Makro formatieren kann. Aktualisieren ist auf Knopfdruck und Sie können alles damit machen.
Ich könnte Sie über einige Details informieren, wenn Sie mir mitteilen, aus welcher Datenbank die Metriken stammen.
PS: Sehen Sie sich die Liste der Treiber unter Daten >> Externe Daten abrufen >> Bestehende Verbindungen >> Weitere >> Neue Quelle >> Andere Erweitert >> Weiter an, um zur Liste der Datenverknüpfungseigenschaften zu gelangen. Sie müssen dann wissen, welche Quelldatenbank und welcher Treiber verwendet werden soll. Sie können mir unter cliffbeacham unter hotmail eine E-Mail mit weiteren Details senden.
quelle
Eine einfachere Möglichkeit (dank dieses Beitrags ) besteht darin, die Daten so zu importieren, wie Sie es für eine bereits heruntergeladene Textdatei tun würden (z. B.
Data > Import Text File
). Statt eines Dateinamens fügen Sie stattdessen die URL der CSV-Datei ein.quelle
Importieren Sie die CSV-Datei direkt über
File->From Text
die Verbindungseigenschaften inData->Connections
Siehe Importieren einer Textdatei durch Herstellen einer Verbindung
quelle
Mit VBS-Makro oder Skript würde wie folgt aussehen (Excel2010 und höher):
Dieses Makro wurde tatsächlich mit dem Excel 2013 Macro Recorder aufgenommen. Sie können eine Schaltfläche erstellen, die dieses Makro auslöst.
quelle