Neuigkeiten:

Ist euer Problem gelöst, dann bitte den Knopf "Thema gelöst" drücken!

Mobiles Hauptmenü

Access als Suchmaschine für Exceltabellen

Begonnen von Mayday, April 24, 2017, 21:15:15

⏪ vorheriges - nächstes ⏩

Mayday

Hi liebe Forumsmitglieder,

vorweg: ich bin kein Accessprofi und will auch keiner mehr werden. Mein Fachgebiet sind die Adobe Produkte Photoshop und Lightroom. Dazu kann ich was sagen. Ich würde mich daher sehr freuen, wenn ein Kundiger mir in diesem Fall problemorientierte Hilfe geben könnte, ohne dass ich dazu alle Hintergründe des Programms komplett verstehen muss.

Folgende Ausgangssituation:
Ich habe ca. 100 Exceldateien, die jeweils ein Tabellenblatt mit dem gleichen Spaltenaufbau beinhaltet.
Ziel ist, dass ich mit Hilfe von Access alle Excel-Dateien/Tabellenblätter nach einem Stichwort durchsuchen lassen kann und mir die Ergebnisse in Access aufgelistet dargestellt werden. Während als Ergebnis gerne die komplette Zeile mit allen Spalten angezeigt werden kann, soll sich die Suche nur auf 1 bestimmte Spalte mit dem Namen "Description" beziehen.

Vielen Dank für's lesen und ich hoffe, ihr wisst Rat?

Liebe Grüße
Mayday







Beaker s.a.

Hallo,
Dazu musst du die Exceltabellen eigentlich nur in Access verknüpfen ->
Externe Daten - Excel - 3. Option im ersten Assi-Fenster.
Dann kannst du die Tabellen wie Accesstabellen durchsuchen.
Wenn sich die Exceltabellen nicht mehr ändern (einmalige Aktion)
könnte es allerdings auch Sinn machen, die Tabellen in eine Tabelle
zu importieren; - 2. Option im Assi. Die musst du dann aber im   
Voraus erstellen mit der passenden Struktur (Felder).

gruss ekkehard
Alles, was geschieht, geschieht. - Alles, was während seines Geschehens etwas anderes geschehen lässt, lässt etwas anderes geschehen. - Alles, was sich selbst im Zuge seines Geschehens erneut geschehen lässt, geschieht erneut. - Allerdings tut es das nicht unbedingt in chronologischer Reihenfolge.
(Douglas Adams, Mostly Harmless)

ebs17

100 Dateien heißt 100 Verknüpfungen und 100 Einzelabfragen pro gesuchten Begriff. Da müsste man sicher eine Schleife programmieren.

Effizienter dürfte es sein, wenn man die Inhalte in einem Tabellenblatt zusammenfasst, so dass man nur eine Tabelle zum Filtern hat.
Nebenbei sollte so das Filtern auch unmittelbar in Excel selber einfach lösbar sein.
Mit freundlichem Glück Auf!

Eberhard

Mayday

Guten Abend!
Besten Dank für die schnellen Antworten. Wie ich die Excel Tabellen importiere habe ich verstanden.

Doch wie und wo genau stelle ich die Suchabfrage ein, so dass sich ein Suchbegriff nur auf die Spalte "Description" bezieht und dann alle entsprechenden Zeilen komplett aus der/den ganzen Tabellenblättern aufgelistet werden?

Gruß
Mayday

Beaker s.a.

Hallo,
Hast du über Eberhards Vorschlag nachgedacht?

Erstelle ein Formular mit der Datensatzherkunft
SELECT * FROM DeineTabelle"
Auf dem Formular erstellst du ein Textfeld zum Suchen.
Das Ereignis "Nach Aktualisierung" (AfterUpdate) behandelst du wie folgt
Me.Filter = "Description LIKE '*" & Me!DeinSuchfeld.Value & "*'"
Me.FilterOn = True

Wenn du aber immer noch 100 Tabellen hast würde ich das Form erstmal
mit einem leeren Recordset öffnen, und die Tabellen in einer Schleife der
Reihe nach durchsuchen. Die gefundene DS vielleicht in einer temporären
Tabelle mit gleicher Struktur speichern und dann diese im Formular anzeigen.

gruss ekkehard
Alles, was geschieht, geschieht. - Alles, was während seines Geschehens etwas anderes geschehen lässt, lässt etwas anderes geschehen. - Alles, was sich selbst im Zuge seines Geschehens erneut geschehen lässt, geschieht erneut. - Allerdings tut es das nicht unbedingt in chronologischer Reihenfolge.
(Douglas Adams, Mostly Harmless)