Dieses Forum nutzt Cookies
Dieses Forum verwendet Cookies, um deine Login-Informationen zu speichern, wenn du registriert bist, und deinen letzten Besuch, wenn du es nicht bist. Cookies sind kleine Textdokumente, die auf deinem Computer gespeichert werden. Die von diesem Forum gesetzten Cookies werden nur auf dieser Website verwendet und stellen kein Sicherheitsrisiko dar. Cookies aus diesem Forum speichern auch die spezifischen Themen, die du gelesen hast und wann du zum letzten Mal gelesen hast. Bitte bestätige, ob du diese Cookies akzeptierst oder ablehnst.

Ein Cookie wird in deinem Browser unabhängig von der Wahl gespeichert, um zu verhindern, dass dir diese Frage erneut gestellt wird. Du kannst deine Cookie-Einstellungen jederzeit über den Link in der Fußzeile ändern.

Excel PQ: Formula Firewall
#1
Hi, Ihr Wissenden,

in Anlehnung an einen alten Werbespruch: "meine Formula Firewall*) bringt mich um"...:

In PQ versuche ich mein unsittliches Ansinnen umzusetzen:
  • in meiner Excel-Datei (die auch die PQ-Abfragen enthält, um die es hier geht) habe ich einige Zellen, die vom Benutzer verändert werden können. Darin sind Verzeichnisse sowie Dateinamen zu finden
  • mit meiner PQ-Abfrage ("qryTexte") lese ich diese Texte ein und baue daraus eine Tabelle (mit ein paar Prüfungen auf Plausibilität, etc)
    diese Abfrage liest nur aus 'Excel.CurrentWorkbook' ein und macht ein bisschen was mit den Texten, sonst nix
    --> nur als "Verbindung" abgelegt
  • in weiteren PQ-Abfragen (z.B. "qryDatei1öffnen")... möchte ich nun Einträge aus der Tabelle nutzen, um damit CSV-Dateien zu öffnen und zu verarbeiten
ABER: hier schlägt meine geliebte Formula.Firewall zu und behauptet, das verstieße gegen gute Sitten und wäre ganz schlecht, weil hier Daten aus verschiedenen Quellen verwendet würden, was ja überhaupt nicht zulässig sei.

WAS SOLL DER UNFUG???

Oder, besser: wie kann ich hier vorgehen, um letztlich Dateien aus Verzeichnissen, die als Texte in meiner Arbeitsmappe stehen, einzulesen?

Was funktioniert, ist, wenn ich in der 'Datei-öffnen-Abfrage' ("qryDatei1öffnen") direkt die Texte aus Current.Workbook einlese, entsprechend überarbeite und verwende.
Aber dann muss ich in jeder Abfrage, die etwas aus diesen Einträgen nutzen will, den ganzen Plausibilitäts-Zinnober durchführen. Daher mein Gedankenansatz, diese Aktivitäten in eine eigene Abfrage auszulagern und in nachfolgenden Abfragen nur die Ergebnisse zu nutzen. Wie geht das?

Zur schematischen Verdeutlichung habe ich mal eine Skizze angelegt, hoffe, dass die hilft, mein Anliegen zu verstehen:    

Gruß und Dank,
RaiSta

*)Für die Jüngeren: in der Werbung hieß es "mein Hüfthalter bringt mich um" - keine Ahnung, für welche Marke der warb. Aber der Spruch ist hängengeblieben... SCNR
Antworten Top
#2
Hi,

sollte normalerweise kein Problem sein, wobei ich mich auf 2 Tabellen mit je einer Spalte beschränken würde. Eine für's Verzeichnis, die andere für die Datei(en). Da hast Du 2 Listen und kannst bequem (auch separat) darauf zugreifen. Schau mal hier
Wobei... wenn die Firewall zuschlägt, hat das sicher andere Ursachen. Passiert das auch mit anderen Dateien in anderen Verzeichnissen? Dann liegt das sicher nicht an PQ....

PS: Die Marke hieß, wenn ich mich recht entsinne, Playtex oder s. ä.... 19
Der sicherste Ansatz für einen Irrtum ist der Glaube, alles im Griff zu haben.
Nur, weil ich den Recorder bedienen kann, macht mich das noch lange nicht zum Musiker.

Ciao, Ralf

Antworten Top
#3
(02.12.2022, 14:33)Ralf A schrieb: sollte normalerweise kein Problem sein, wobei ich mich auf 2 Tabellen mit je einer Spalte beschränken würde. Eine für's Verzeichnis, die andere für die Datei(en). Da hast Du 2 Listen und kannst bequem (auch separat) darauf zugreifen. Schau mal hier
Hmmm, da habe ich mich wahrscheinlich missverständlich ausgedrückt...
  • aktuell liegen mir zwei Verzeichnisse vor (im Netzwerk ... aber das dürfte hier erst mal unerheblich sein), sagen wir  D:\....\ABC und C:\...\XYZ
  • in diesen Verzeichnissen liegen jeweils mehrere Dateien (.xlsx, .csv, ... usw)
  • in meiner aktuell geöffneten Datei, nennen wir sie schlicht "Excel-Datei" (siehe Skizze im originalen Beitrag), die die PQ-Abfrage enthält, will ich nun auf bestimmte Dateien aus den beiden oben genannten Verzeichnissen zugreifen und diese auswerten
  • Diese 'Excel-Datei' liegt auf einem anderen Verzeichnis, aktuell ebenfalls im Netzwerk
  • in der 'Excel-Datei' kann der Nutzer nun sowohl das Verzeichnis, als auch die auszuwertende Datei eintragen- in einer Tabelle halt: in meiner Skizze der blau umrandete Bereich
  • meine erste PQ-Abfrage (Skizze: "qryTexte") liest dann bei Aktualisierung das aus der 'Excel-Datei' ein, was der Benutzer aktuell in die Zellen eingetragen hat und fügt das Ganze zusammen, prüft, ob auch überall die "\" stehen, aber auch kein doppelter "\\", etc. und stellt das Ergebnis als Tabelle zur Verfügung (Skizze: die blaue Tabelle mit 'Verz1, Verz2, Datei1, Datei2")
  • in einer nachfolgenden zweiten (dritten, vierten, ... ) Abfrage (Skizze: "qryDateiöffnen") nehme ich mir Elemente aus der von qryTexte gelieferten Tabelle und versuche, die entsprechende Datei aus dem gewählten Verzeichnis zu öffnen, um sie weiter auswerten zu können
Bei diesem Vorgang jedoch schlägt die Formula.Firewall zu, wohl weil ich Elemente aus einer anderen Abfrage (hier: qryTexte) verwende, um eine neue Datei zu öffnen.
Solange ich die Vorgänge alle in meiner zweiten Abfrage (qryDateiöffnen) ablaufen lasse (also einlesen aus der geöffneten Mappe, Verzeichnisse prüfen, etc.) ist das bei meinen Tests kein Problem. Sobald aber eine eigenständige Abfrage die Texte ausliest, jammert die Formula.Firewall.
Leider weiß ich nicht, wie ich eine Beispielmappe erstellen kann, die auch tut, um das Problem nachvollziehbar zu machen, daher die umständliche Beschreibung. Es ist halt die Interaktion mit verschiedenen Verzeichnissen und Dateien, die für ein Beispiel zum Problem wird.
(02.12.2022, 14:33)Ralf A schrieb: PS: Die Marke hieß, wenn ich mich recht entsinne, Playtex oder s. ä.... 19
Das heißt, Du gehörst auch der Generation an, die das noch kennt...! Stark! ...aber der Markenname weckt bei mir keine Erinnerung. Fühlte mich von der Werbung an sich halt nicht richtig adressiert... Nur der Spruch blieb haften, empfand ich irgendwie als bescheu***

Gruß und Dank,
RaiSta
Antworten Top


Gehe zu:


Benutzer, die gerade dieses Thema anschauen: 1 Gast/Gäste