Daten aus anderer Datei importieren ohne diese zu öffnen (+ kostenloser Download) | Excel VBA

preview_player
Показать описание
In diesem Video nutzen wir eine Datenbank Abfrage, um Daten aus einer anderen Datei zu kopieren ohne diese zu öffnen. Die Daten aus der geschlossenen Datei werden dabei ausgelesen und in die ursprüngliche Arbeitsmappe eingefügt/importiert.

________

LINKS zu den Excel VBA Grundlagenvideos

________

Timestamps
0:00 Intro
0:21 Vorteile von ADO
0:58 Ausgangslage
1:48 Modul einfügen, Bibliotheks-Verweis setzen
2:29 Ablauf der Prozedur skizzieren
3:55 Connection herstellen und ConnectionString
5:20 Pfad auslesen
5:48 Connection testen
6:15 SQL-Query definieren
7:29 SQL-Query ausführen
8:11 Daten aus dem Recordset auf das Tabellenblatt laden
8:59 Test
9:18 Daten Filtern
10:11 Daten in ein Array laden
11:10 Haltepunkt setzen; Array im Lokalfenster anschauen
12:00 Benutzer eine Datei auswählen lassen
Рекомендации по теме
Комментарии
Автор

Hallo Kain
super Video mit großem Lerneffekt. Gut, dass man bei dir immer wieder fündig wird.

manfreddeller
Автор

Danke, lieber Kai! Gute Variante. Das Ansprechen mittels Query finde ich super. Du machst eine tolle Arbeit. Wie immer sehr interessant. Liebe Grüße aus Österreich! Reinhard

anibunny
Автор

Wie immer TipiTopi - vielen Dank Kai 🙂

herrfauso
Автор

wieder mal sehr Informativ, mal sehen wo ich das umsetzen kann. Ich greife auch oft auf anderen Tabellen zu, die bis jetzt immer geöffnet, kopiert und wieder geschlossen habe. Allerdings ist die Datenmenge (Zeilen) immer unterschiedlich und müsste ermittelt werden.

michaeloloth
Автор

Hallo Kai, vielen Dank für das sehr gut gemachte Video, Schritt für Schritt mitgemacht und klappt alles. Das Filtern funktioniert auch, allerdings nicht beim Datum. Mein Ziel ist es, aus einer Archivdatei, die geschlossen bleibt, die Datensätze von z.B. "01.01.2020 bis 31.12.2020" auszulesen, aber ich denke das hat was mit dem Datumsformat zu tun und man muß das vorher wandeln. Da lese ich mich noch mal ein in die Filtermöglichkeiten. 😄

matthiasriehn
Автор

Deine Videos sind einfach genial!

Wie wäre der String für eine csv.-Datei? Oder ist dann alles grundlegend anders?

VG

n.s.
Автор

Hallo Kai, super Video!!! Gibt es auch eines in dem du beschreibst wie Daten per ADO in eine Datei geschrieben werden können? Oder ist das mit dieser Methode nicht möglich?

schaeferjoerg
Автор

Hallo Kai,
vielen Dank für das tolle Tutorial. Du erklärst es sehr gut und auf eine sehr angenehme sympathische Art. Ist gelinde und Abonniert.
Ich habe das Problem, das die Dateien die ich von extern erhalte im Tablellennamen Leerzeichen und Dots . Enthalten wie „4. Tabelle mtl.“.
Hierbei hat der Query Befehl Probleme.
Wie kann man das Problem lösen?
Doppelt „“ damit die „ im String bleiben hat nicht geklappt.
Zum Hintergrund. Ich muss ca. 40 Dateien mit mehr als 30 Tabellenblätter (brauche nur ein Blatt) einlesen. Manche sind rund 100 MB groß. Möchte am Ende alles in ein Array und dann in 1 Tabelle bekommen.
Bin erst beim ersten Schritt das auslesen der 1 Datei bevor ich eine Schleife zum Einlesen erstelle.
Viele Grüße Martin

martin-zgcb
Автор

Ist das auch möglich, zu beschränken, dass man nur aus bestimmten Dateien bestimmte Zeilen auslesen kann/darf?
Praktisch geht es darum, dass Mitarbeiter Ihre eigenen Schichten sehen können sollen. Der komplette Plan sollen in einer mit einem Passwort geschützten "Haupt-Excel" gespeichert werden. Jeder Mitarbeiter bekommt seine eigene Passwortgeschütze Excel-Datei, die damit eine entsprechende Zeile aus der Hauptdatei auslesen können. Der Mitarbeiter soll aber nicht abändern können, welche Zeile ausgelesen wird.
Geht das mit Excel?

PepperinooDe
Автор

Hallo Kai erstmal Danke für deine tollen Videos die du immer machst. Wie ist es eigentlich wenn die Datei von den man die Daten abruft mit Kennwort gesichert ist, können die Daten trotzdem abgerufen werden mit dieser Prozedur?

Mapsys
Автор

Danke für das tolle Video und Deine Zeit, Kai! Ich dann den RecordSet in die Tabelle kopieren, aber nicht in den Array "arr = rs.GetRows", dieser bleibt leer. Kannst Du da helfen? Vielen Dank

chrisk.
Автор

Hallo Kai, ich lerne super viel durch Deine Videos. Vielen Dank.
Eine Frage zum obrigen Video: Weißt Du, wie ich die Formatierungen und Farben, etc. aus der Quelldatei mit in die Ausgabedatei nehmen kann? Viel Grüße Peter

petera
Автор

Hallo Kai,
echt Klasse! Aber eine Frage: die Spaltennamen enthalten bei mir z.T. einen Punkt (das muss auch so bleiben). Die SQL-Abfrage macht daraus aber ein #. Wenn man's weiß einfach ein Replace. Gibt es aber auch noch andere "Übersetzungen"?

TorstenHansen
Автор

Super Video und einfache Erklärung, danke dafür! Gibt es eine Möglichkeit in der Select From Abfrage direkt zu definieren dass erst ab einer bestimmte Zelle bzw Zeile bis zum Ende der Quelltabelle eingelesen wird? (So dass z.B. erst ab A3 eingelesen wird)

timheesch
Автор

Hallo zusammen,
kennt jemand einen Weg, wie man die "anzuzapfende Datei" variabler machen kann? In Kai's Video wurde der Pfad zur Datei leider fix gesetzt, so dass die Datei immer gleich heißen muss, damit die Connection aufgebaut werden kann. Kennt jemand einen weg wie man dort ein Datei öffnen Fenster bekommt und sich dann die Datei aussuchen kann?
Vielen Dank!

jiggybi
Автор

Hallo Kai, wie immer ein tolles Video. Ich habe dieses gerade in einem Projekt umgesetzt aber eine Frage: wie kann ich das zu importierende Arbeitsblatt über seinen Codenamen oder Index ansprechen. Ich importiere Fremddateien mit nur 1 Arbeitsblatt aber unterschiedlichen Namen.

heiner
Автор

Hallo Kai.
Vielen Dank für das Video. Es erweitert den VBA Horizont doch um einiges :-)
In dem Video wird genau das gezeigt was ich benötige. Allerding gibt es auch einen Hacken.
In meinem Quelldokument (Quellsheet) sind die ersten 3 Zeilen Überschriften. D.H. die eigentlichen Datensätze beginnen erst ab Zeile4.
Wie lässt sich das realisieren? Leider lässt sich auch auf die 3 voranstehenden Zeilen nicht verzichten.

maikaeferflugbenzin
Автор

Hallo Kai, kannst du nicht mal in dem Zusammenhang ein Video über Early und Latebinding machen?

Автор

Hey Kai,
Mega Video ! Super verständlich dargestellt. Ich habe noch eine Frage:
Wie schreibe ich den Code wenn ich zB nur Zeile 7-25 einfügen möchte ? Stehe da auf dem Schlauch und Google hilft mir auch nicht weiter !😅

Tobitsches
Автор

Hallo Kai. Super Videos! Habe aber noch folgende Fragen

Ist es richtig, dass auf diese Art nur auf geschlossen Exceldateien zugegriffen werden kann?
Ich möchte auf interne 'intelligente' Tabellen (.ListObjects) per SQL zugreifen können (um auch mal einfach nach SQL Server wechseln zu können)

Wie kann ich das Ende eines (.ListObjects) ausfindig machen um Daten anzuhängen?

Ich finde es toll, dass es bei Deinen Videos auch um schönes Design geht.

markusjeker
welcome to shbcf.ru