Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1956to1960
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

Automatische Zusammenfassung nach Shema: Repetiv - Hilfe

Automatische Zusammenfassung nach Shema: Repetiv - Hilfe
30.11.2023 23:53:27
_Nordlicht_
Moin zusammen,

Ich bin frisch aus der Schule raus und habe in meinem aktuellen Praktikum erstmals so richtig mit Excel zu tun.

Dabei bin ich aktuell in einer repetitiven Ordnerstruktur unterwegs, in welcher verschiedene Berechnungstabellen für Excel mehrfach für verschiedene Standorte (ca. 100 Stück) vorhanden sind. Für jeden Standort gibt es einen eigenen Ordner, die Tabellen sind in diesem immer gleich sortiert, sind auch immer gleich aufgebaut, beinhalten aber natürlich verschiedene Werte.

Ich möchte für die wichtigsten Ergebnisse aus diesen Berechnungstabellen nun pro Standort eine, ebenfalls immer gleich aufgebaute, Zusammenfassungstabelle erstellen. Manuell 15 Datensätze 100 Mal zu kopieren aus 4 Tabellen je Zusammenfassung; Das erschien mir dann aber doch eher langwierig.

Nun wollte ich also eine Tabelle erstellen, die immer den selben Weg zu den passenden Tabellen einschlägt, dort die richtigen Zellen kopiert und sich so am Ende eben automatisch mit den Daten füllt.
Das mag etwas überambitioniert scheinen, berufen habe ich hierbei jedoch auf meine marginalen Kenntnisse vom Modding von PC-Spielen. Da diese nicht immer an der selben stelle installiert sind, kann man hier in den Dateien einen Verweis um einen, zwei, oder auch drei Ordner zurück zur eigenen Position erstellen. Oder eben überhaupt einen Verweis von der eigenen Position aus erstellen. Dafür schreibt man den Dateipfad z.B. wie folgt: "..\..\textures\texture_1" anstatt z.B. "C:\Program Files\Spiel_X\data\textures\texture_1". So kann man dann ohne Probleme auch alles einfach auf D: verschieben. Das ".." heißt hierbei soviel wie "gehe einen Ordner zurück".

Ein Traum wäre natürlich soetwas auch in Excel umzusetzen. Auf diesem Wege müsste ich dann nurnoch die Zusammenfassung bei jedem Standort an die richtige Stelle kopieren. Ob sowas möglich wäre, vielleicht auch einfach über VBA... Ich weiß es leider nicht. Vielleicht kann mir hierbei jemand helfen/mir erklären, wie man soetwas in Excel möglich macht.

Eine leichter umsetzbare Idee eines Kollegen war nun das ganze über die "VERKETTEN" Funktion zu realisieren. Er wollte hierbei die Teile des Dateipfads, die immer gleich sind, vorher definieren und eben zwei Eingabefelder für die Namen der sortierenden Ordner verwenden. So ließe sich der Dateipfad immer individuell anpassen an den jeweiligen Standort, und das über nur zwei simple Eingaben. Ich habe nun versucht dies umzusetzen, und ja, den richtigen Dateipfad bekomme ich so auf simpelste Weise zusammengebaut. Allerdings mit einem großen Problem: "VERKETTEN" gibt mir am Ende den Dateipfad als String/Text, und öffnet diesen nicht.

Ein Beispiel: Ich möchte in diesem Fall die Daten der "Calc_table_V1" aus der Zelle D4 kopieren lassen:

='C:\Users\User\Documents\*FIRMA*\US Market\*ANWENDUNG*\*BUNDESSTAAT*\*STANDORT NAME*\Calculation_Tables\[Calc_table_V1.xlsx]Tabelle1'!$D$4

Den Dateipfad habe ich nun Zerstückelt in:

F4 ='C:\Users\User\Documents\*FIRMA*\US Market\*ANWENDUNG*\
G4 *BUNDESSTAAT*
H4 \
J4 *STANDORT NAME*
I4 \Calculation_Tables\[Calc_table_V1.xlsx]Tabelle1'!$D$4

G4 und J4 sind die Zellen, in die ich manuell den Namen und den Bundesstaat eintragen möchte. Der Rest des Dateipfades bleibt immer gleich.

Nach anwenden von:

=VERKETTEN(F4;G4;H4;I4;J4)

Erhielt ich dann den vollen Dateipfad. Den ich dann auch ohne Probleme nach meinen Belieben dem Standort anpassen konnte. Aber wie gesagt: Geöffnet hat sich der Dateipfad nicht. Ich muss ihn dann nochmal manuell kopieren, Das = neu setzen und dann lädt er die Daten. Was aber automatisch passieren soll.

Probiert habe ich:
- Das ganze via "INDIREKT" vor "VERKETTEN" automatisch ausführen zu lassen.
- Die sehr alte Funktion "AUSWERTEN" wieder in Excel zu integrieren und zu verwenden.

Beides funktioniert für normale Formeln. Diese werden dann sofort ausgeführt und funktionieren als Formel wieder. Doch den Dateipfad mit Zellenverweis möchte Excel mir nicht geben. Es kommt folgender Fehler: #BEZUG! in beiden Fällen. Kopiere ich jedoch den generierten Dateipfad in eine neue Zelle, lösche das Gleichheitszeichen und füge es dann wieder hinzu, dann wird der Dateipfad sofort geöffnet und ich erhalte den richtigen Wert in der Tabelle. Was schön und gut ist, aber manuelle Dateipfade sind nicht schneller als manuelles Kopieren...

Ich bin mir durchaus bewusst, dass ich auf dem manuellen Wege am Ende wahrscheinlich sogar schneller wäre, doch lerne ich niemals eine Excel Tabelle zu automatisieren, wenn ich es nicht irgendwann versuche. Und wenn es dann einmal klappt, dann ist es auf jeden Fall die sauberere und schnellere Lösung.

Ich wäre sehr dankbar für eine Antwort. ; )

Wenn ihr jedoch weitere Infos braucht, dann bitte fragen. Die originalen Dateien kann ich euch aus Datenschutzgründen leider nicht zukommen lassen. Hoffe das ist verständlich.

Vielen Dank.

LG aus dem Norden von Deutschland.

21
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Automatische Zusammenfassung nach Shema: Repetitiv
30.11.2023 23:55:27
_Nordlicht_
Repetitiv sollte es im Titel heißen. Entschuldigt bitte. ; )
AW: Automatische Zusammenfassung nach Shema: Repetitiv
01.12.2023 02:27:58
onur
Und SCHEMA: : )
AW: Automatische Zusammenfassung nach Shema: Repetiv - Hilfe
01.12.2023 00:36:46
onur
ChDir ".."

ist das, was du suchst.
AW: Automatische Zusammenfassung nach Shema: Repetiv - Hilfe
05.12.2023 09:10:53
_Nordlicht_
Moin,

Das könnte gut sein. Vielen Dank. Kann man mir noch genauer erklären, wie ich derartige Verweise is VBA am besten mache?

Gruß
AW: Automatische Zusammenfassung nach Shema: Repetiv - Hilfe
05.12.2023 09:19:00
onur
GENAUSO wie ich es geschrieben habe.
AW: Automatische Zusammenfassung nach Shema: Repetiv - Hilfe
05.12.2023 11:25:14
_Nordlicht_
Kann ich das auch wie folgt machen?

Dim Filename = "..\Calculation_Tables\Calc_table_V1.xlsx"

und das dann irgendwie öffnen?
AW: Automatische Zusammenfassung nach Shema: Repetiv - Hilfe
05.12.2023 11:27:19
onur
Du wolltest doch wissen, wie du im Verzeichnisbaum eine Stufe höher kommst und das habe ich dir beantwortet.
Anzeige
AW: Automatische Zusammenfassung nach Shema: Repetiv - Hilfe
05.12.2023 11:33:45
_Nordlicht_
Ich habe das ganze mittlerweile einmal so funktionsfähig gehabt, versucht zu erweitern, gespeichert, war nicht funktionsfähig. Also zurückgeändert, es funktioniert nicht mehr. Was ist falsch an meinem Code? Ich sitze hier grad mit großen Augen, weil es auf Mal nicht mehr geht. Er sagt mir: "Laufzeitfehler '1004': Wir konnten ..\Calculation_Tables\Calc_table_V1.xlsx nicht finden."

Dabei habe ich den Dateipfad nicht verändert?

Wenn ich den Pfad vollständig angebe, also C:\Users\User etc... Dann geht es. Aber ich hatte es gerade doch auch mit ".." funktionsfähig? Ideen? Was mache ich nun wieder falsch? XD

Hier der Code:

Sub Datapull()

'
' Datapull Makro
'
' Tastenkombination: Strg+ü
'
' Get customer workbook...
Dim customerBook As Workbook
Dim Filename As String
Dim customerWorkbook As Workbook
Dim targetWorkbook As Workbook

' make weak assumption that active workbook is the target
Set targetWorkbook = Application.ActiveWorkbook

' get the workbook
filter = "Text files (*.xlsx),*.xlsx"
caption = "Please Select an input file "
Filename = "..\Calculation_Tables\Calc_table_V1.xlsx"

Set customerWorkbook = Application.Workbooks.Open(Filename)

' copy data from customer to target workbook
Dim targetSheet As Worksheet
Set targetSheet = targetWorkbook.Worksheets(1)
Dim sourceSheet As Worksheet
Set sourceSheet = customerWorkbook.Worksheets(1)

targetSheet.Range("C4", "C4").Value = sourceSheet.Range("D4", "D4").Value
targetSheet.Range("C5", "C5").Value = sourceSheet.Range("E4", "E4").Value
targetSheet.Range("C6", "C6").Value = sourceSheet.Range("F4", "F4").Value

' Close customer workbook
customerWorkbook.Close

End Sub


Anzeige
AW: Automatische Zusammenfassung nach Shema: Repetiv - Hilfe
05.12.2023 11:37:47
_Nordlicht_
Die Filter bitte ignorieren. Ich hatte Fileselect zum Testen auch kurz verbaut. Das hab ich wieder rausgeworfen, die Zeilen jetzt auch gelöscht.

Wollte es vereinfachen für die Seite hier, habe aber direkt einen offensichtlichen Fehler verbaut.

Entschuldige und nochmals vielen Dank für die Antworten.

Gruß
AW: Automatische Zusammenfassung nach Shema: Repetiv - Hilfe
05.12.2023 11:38:00
onur
"Wenn ich den Pfad vollständig angebe, also C:\Users\User etc... Dann geht es. Aber ich hatte es gerade doch auch mit ".." funktionsfähig?" Das wage ich zu bezweifeln.
Wie kommst du auf die Schnapsidee, der Pfad müsse nicht vollständig sein?
AW: Automatische Zusammenfassung nach Shema: Repetiv - Hilfe
05.12.2023 11:41:00
_Nordlicht_
Das ganze hat gerade eben funktioniert. Ich habe mich hier an meinen alten Programmierkenntnissen vom Modding orientiert. Dabei kann man den Pfad auch mit "..\Ordner\Datei" angeben. Eben mit .. um eine Ebene zurück zu kommen. Und das hat ja auch gerade noch funktioniert?
Anzeige
AW: Automatische Zusammenfassung nach Shema: Repetiv - Hilfe
05.12.2023 11:47:52
_Nordlicht_
Wenn das ganze so nicht geht, dann bin ich ja wieder bei 0. Denn was ich brauche ist:

1. Gehe einen Ordner zurück
2. Gehe in den Ordner "Calculation_Tables"
3. Gehe in die Datei "Calc_Table_V1.xlsx"

Und das OHNE vollen Dateipfad. Da sich dieser immer unterscheidet. Die interne Struktur ist allerdings immer gleich. Daher dachte ich ich kann mir das zu Nutzen machen. So wie das hier klingt, geht das aber scheinbar nicht.

Ich vermute bei mir funktionierte es nur, weil ich vergessen habe das Makro zu speichern. Sicher weiß ich das aber nicht.
AW: Automatische Zusammenfassung nach Shema: Repetiv - Hilfe
05.12.2023 12:05:24
onur
Ist es denn sooo schwer?
    ChDir ".."

ChDir "Calculation_Tables"
Workbooks.Open "Calc_Table_V1.xlsx"
Anzeige
AW: Automatische Zusammenfassung nach Schema: Repetitiv
05.12.2023 16:42:18
_Nordlicht_
Danke,

Nein, ist es nicht, jetzt wo ich einmal wirklich gesehen habe, wie das ganze funktioniert. Ich habe halt nie mit Excel, geschweige denn VBA gearbeitet.

Aber jetzt funktioniert alles. Übrigens auch mit "..\Calculation_Tables\Calc_Table_V1.xlsx" Beide Methoden führten am Ende ans Ziel. Warum es vorher nicht ging, hatte einen ganz simplen anderen Grund:

ChDir ThisWorkbook.Path


Musste ich vorher einfügen. Sonst ist er immer von einem mir unbekannten Ort aus gestartet. Wenn ich Excel aber gerade geöffnet habe mit der Tabelle, in der meine VBA Makros hinterlegt sind, dann ist er vom richtigen Ordner aus gestartet. Ergo: Es geht. Aber nur ein einziges Mal.

Mit dem Verweis vor...



Filename = "..\Calculation_Tables\Calc_table_V1.xlsx"


... funktioniert nun alles einwnadfrei.

Funktionierende Makros beinhalteten am Ende:

ChDir ThisWorkbook.Path

Filename = "..\Calculation_Tables\Calc_table_V1.xlsx"

Set customerWorkbook = Application.Workbooks.Open(Filename)


oder



ChDir ThisWorkbook.Path
ChDir ".."
ChDir "Calculation_Tables"

Set customerWorkbook = Application.Workbooks.Open("Calc_Table_V1.xlsx")


Vielen Lieben Dank für die Hilfe!

LG
Anzeige
Gerne !
05.12.2023 19:14:50
onur
AW: Automatische Zusammenfassung nach Shema: Repetiv - Hilfe
05.12.2023 11:43:03
onur
ChDir ".." reicht.
AW: Automatische Zusammenfassung nach Shema: Repetiv - Hilfe
05.12.2023 11:52:42
_Nordlicht_
Ich glaube ich bin einfach verwirrt, wie ich ChDir ".." in meinem Fall in den vorhandenen Code einbaue.

Wie gesagt: Ich habe von VBA zum ersten Mal vor 4-5 Tagen gehört. Ich wusste vorher nicht einmal, dass es das ganze gibt. Daher fehlt mir hier wahrscheinlich das nötige Vorwissen zur Anwendung.

Ich kann ja nochmal ein bisschen Zeit aufwenden, um mir das ganze zu veranschaulichen. Bisher ist es mir nicht ersichtlich.

Wenn mir einer von euch hierbei behilflich sein könnte, z.B. auch Du @onur... Das wäre einfach großartig. Ich wäre sehr dankbar.

Gruß
Anzeige
AW: Automatische Zusammenfassung nach Shema: Repetiv - Hilfe
01.12.2023 06:55:47
ralf_b
Versuch dein Glück mit Powerquery. Das ist dafür da aus diversen Ordnern Daten zusammen zu suchen.
Am Ende erhälst du eine Tabelle in einem Arbeitsblatt, die du nach Belieben filtern oder auslesen kannst.
Vorteil: Kein VBA , Nachteil: PQ muß man auch erstmal verstehen, bei "Kaum Excelkenntnissen" eher schwierig.

Die Originaldatei wollen wir hier meist nicht, aber eine Beispieldatei, die das Problem darstellt und eine Wunschlösung beinhaltet wäre ok.

Der wahrscheinlich beste Rat, den man dir hier erteilen kann. Erkläre deinen Chef, das diese Aufgabe für dich so nicht lösbar ist und erbitte Schulungen/Unterstützung. Da habt ihr beide was davon. Die Antwort zeigt dir dann in was für einem Laden du da gelandet bist.
Anzeige
AW: Automatische Zusammenfassung nach Shema: Repetiv - Hilfe
05.12.2023 09:13:27
_Nordlicht_
Moin,

Danke für die Antwort. Mit den Mitarbeitern habe ich schon gesprochen. Der Excel-Profi der Firma ist leider aktuell auf Dienstreise. Also für mich nicht erreichbar.

Ich soll das ganze ansonsten einfach manuell übertragen. Aber da ist mein Anspruch an mich selbst schon höher.

LG
AW: Automatische Zusammenfassung nach Shema: Repetiv - Hilfe
05.12.2023 09:13:48
_Nordlicht_
Moin,

Danke für die Antwort. Mit den Mitarbeitern habe ich schon gesprochen. Der Excel-Profi der Firma ist leider aktuell auf Dienstreise. Also für mich nicht erreichbar.

Ich soll das ganze ansonsten einfach manuell übertragen. Aber da ist mein Anspruch an mich selbst schon höher.

LG
Anzeige
Praktikum
01.12.2023 07:34:01
RPP63
Moin!
In einem Praktikum sollte mE das Tätigkeitsfeld vorgestellt sowie an einfache Arbeiten herangeführt werden, um das Interesse für den Beruf (und die Firma) zu wecken.
Deine Anfrage erscheint mir diametral dazu …

Gruß Ralf

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige