Automatischer Eintrag von Werten in neuer Zeile

Registriert
Nov. 2012
Beiträge
161
Hallo,

ich habe eine sehr knifflige Frage, bei der ich derzeit nicht weiterkommen.
Grundsätzlich bin ich fit in Excel, habe dazu jedoch keine Lösung gefunden:

Wir haben eine Datei, mit der wir täglich Veränderungen von Daten darstellen möchten um z.B. einen Verlauf anzeigen zu können.
Als Beispiel nehme ich z.B. den DAX. Die Werte kann ich mittels Power Query bzw. "Daten aus dem Web" herausfiltern. Hier war das erste Problem, die Daten sollten sich optimaler Weise selbst aktualisieren. Die Einstellung habe ich erfreulich schnell gefunden und passend eingestellt.

Nun habe ich das Problem, dass sich die nun gefundenen Werte dauerhaft verändern und man daraus keinen Verlauf erstellen kann.
Frage 1: Gibt es hier eine Möglichkeit z.B. einmal am Tag (gerne auch immer zur gleichen Zeit) sich diese Daten automatisch in ein passendes Feld eintragen zu lassen? Dabei wäre es wichtig, dass das passende Feld jeden Tag eine Zeile runter rutscht, da sonst die alten Daten überschrieben werden.

Beispiel:

Tag 1: Wert 1 - Wert 2 - Wert 3
Tag 2: Wert 1 - Wert 2 - Wert 3
Tag 3: Wert 1 - Wert 2 - Wert 3
etc.

Dann würde ich mir gerne eine Übersichtsseite erstellen. Auf diese Seite sollten z.B.:

- ein Wert, der sich jeden Tag verändert, aber direkt automatisch in eine bestimmte Zelle eingetragen wird (siehe Vergleich Liste oben). Da dieser Wert jeden Tag eine Zeile weiter runter rutscht, weiß ich nicht wie ich das angehen sollte (einfache wenn-Formel unten in der Liste beginnend?)
- einen Durchschnitt der letzten 30 Tage. Kann man Excel irgendwie begreiflich machen, dass ein Durchschnitt der letzten 30 Tage bzw. Einträge gezogen werden soll?

Da wir in dieser Analyse >50 Einträge protokollieren möchten, wäre es sehr aufwändig alles von Hand zu machen.

Anmerkung:
Mit VBA habe ich bisher nichts zu tun gehabt, gebe aber mein bestes um euch bei meiner Hilfe zu unterstützen. :)

Herzlichen Dank.

Andy
 
AW: Guten Tag,

Meine Empfehlung wäre ein SQL Server und ein Programm in beliebiger Programmier / Script Sprache.
Dann ziehst du dir die Daten vom SQL Server, einfach per Refresh.
Und im Idealfall packste dann noch Excel weg und baust irgendeine Art von Report darauf, der dann (noch besser) über Web abgerufen werden kann.
 
Hallo,

anscheinend hat Chrome etwas gehakt und den Thread doppelt erstellt.

Der Vorschlag mit einer SQL-Datenbank hört sich ganz gut, jedoch habe ich davon wirklich gar keine Ahnung...:D
Könnte man so eine SQL-Datenbank mit MariaDB auf einem Synology-NAS laufen lassen?
 
Wenn du bei Excel bleiben möchtest, dann wird das natürlich schwierig... Einmal am Tag einen Datensatz abrufen. Dafür musst du entweder die Excel Mappe offen lassen und danach irgendwie einen Trigger laufen lassen. (evtl einen Tag mit thread.sleep(####))
Oder du erstellst eine Aufgabe, die täglich ein Script oder Programm ausführt, dann diese Excel öffnet und bearbeitet.

Wenn du das andererseits einmal am Tag machen würdest, dann wäre es natürlich kein Problem so einen Verlauf mit einem Makro zu generieren.
Dabei kopierst du einfach die Werte der aktualisierten Zeile in deine Verlaufsliste. Evtl statt Tag1 das Datum verwenden (oder mitkopieren) und dann einfach eine neue Zeile einfügen.
Dafür musst du nur ein Makro aufnehmen und brauchst dafür keine VB Kenntnisse.

Hoffe ich habe alles richtig verstanden...
 
Ich kenne MariaDB nicht, aber grundsätzlich kannst du da vermutlich jede Art von Datenbank nehmen.

Du brauchst folgende Sachen:

Datenextraktion:
Ein Programm Script was a) die Daten crawlen kann und b) in benötigter Form in die Datenbank einsetzen kann.

Datenumwandlung für deine Zwecke:
Meist DB intern, oder schon direkt über die Extraktion.

Datenanzeigen:

Schnittstellen für Lesen aus deiner DB.

Wenn da auch kein Internet dranhängt (also der Report und die DB nicht aus dem Internet erreichbar sind) kannst du auch direkt per HTML & PHP z.B. draufgehen)

Der Fantasie sind da keine Grenzen gesetzt.

Ist halt die Frage was für Hard / Software du einsetzen kannst und wo Skill vorhanden ist.
Kannst aber auch ne SQLite DB nehmen, wenn es eh nur auf einem System ist.

Wenn aber mehrere Leute diesen Report verwenden oder in Zukunft verwenden sollen, ist das halt wieder ne schlechte Lösung.
 
Hallo,

eine Datenbank kommt aufgrund fehlender Skills leider nicht in Betracht.

Obwohl bei mir auch keine Kenntnisse in VBA vorhanden sind, ist die Integration dort vermutlich deutlich einfacher als eine komplett neue Struktur und eine DB aufbauen zu müssen.
 
Naja..

Ein Python Script von etwa 10 Zeilen wahrscheinlich, ne Windows Task / Cronjob und ne lokale SQLite file / MS Access DB sollte das ganze schon erledigen. SQLite scheint ein wenig schwieriger in Excel zu bekommen, Access ist kein Problem.

Rein Excel technisch kann ich dir da aber nicht weiterhelfen. Ich schiebe Daten in eine DB und rufe sie dann von dort aus, wie ich sie angezeigt bekommen möchte :)

Wie gesagt, schreib doch mal wie das Ding überhaupt benutzt wird.

Liegt das Excel File auf nem NAS und alle greifen darauf zu? Benutzt es eh nur einer?

Also, wieviele User, von unterschiedlichen Systemen aus etc.
 
Hallo,

da die Datei noch ganz neu ist, haben wir bisher nicht viel damit gemacht.

Zukünftig würde die Datei jedoch auf dem NAS liegen und es würde primär von 1-2 Leuten genutzt.

Wofür das Tool benutzt werden soll ist ein wenig kompliziert, da man nie weiß wer mitliest :evillol:
Grundsätzlich möchten wir mit diesem Tool die Anzahl von Bewertungen von Verkäufern aus Amazon ablesen. Damit möchten wir uns in regelmäßigen Abständen mit anderen Verkäufern vergleichen.

Da die Daten offen und für jeden zugänglich sind, sollte das auch kein Problem sein. Hier ein Beispiel:

https://www.amazon.de/sp?_encoding=...derID=&seller=A3QS3HAKCONK0Q&tab=&vasStoreID= Stellt wirklich nur irgendein Beispiel dar.
Uns interessiert die Tabelle auf der rechten Seite.
Ich habe bereits geschafft diese Tabelle automatisch alle 5 Minuten abrufen zu lassen.

Damit wir nicht nur Tagesaktuelle Zahlen, sondern einen Verlauf zur Verfügung haben, würde ich gerne eine der Zahlen für diesen Tag sichern.

Ich brauche also wirklich "eigentlich" nur die Möglichkeit Excel sagen zu können,
- jeden Tag (am besten immer zur gleichen Uhrzeit) kopierst du dir diesen Wert aus Zelle XY und fügst ihn in die nächste freie Zelle in Spalte E ein (halt immer einen Tag weiter).


Habe mir bei Udemy einen Kurs für 10€ gekauft, der sich mit VBA beschäftigt, da ich das Thema grundsätzlich ganz interessant finde. Glaube aber eher nicht, dass das Wissen aus dem Kurs bereits reicht.

Andy
 
kannst du trotz allem eine beispieldatei hochladen damit man darauf aufbauen kann? Namen von Konkurenten kannst du ja durch Platzhalter ersetzen...
 
Hallo,

anbei habe ich eine kleine Datei vorbereitet. Diese Datei ist zwar ohne großartige Formatierung oder ähnlichem, dennoch sollte sie als Beispiel dienen.

Die Werte habe ich auch Random verändert.

Damit ihr besser versteht was ich genau meine und machen möchte, habe ich in mehreren Zellen Kommentare hinterlassen.

Zu dem eigentlichen Problem habe ich noch ein zweites Arbeitsblatt, bei dem ich zur Übersicht gerne bestimmte Werte
eingetragen. Z.B. Anzahl von X in den letzten 30 Tagen.

Für Tabelle2 H27 habe ich auch bereits eine Formel entwickelt, diese klappt jedoch nicht. Meine Vermutung ist, dass die Formel Probleme damit hat, dass über mehrere Arbeitsblätter hinweg gearbeitet werden soll.

Hier die Formel für meine Idee:

=MITTELWERT(INDIREKT(Tabelle1!G22;WAHR):INDIREKT(Tabelle1!G23;WAHR))

Die benötigten Werte habe ich mit unter Tabelle1 rausgesucht.

Ich danke für eure Hilfe!
 

Anhänge

  • Mappe2.xlsx
    23 KB · Aufrufe: 340
Zuletzt bearbeitet:
Zurück
Oben