Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

Ergebnis von Formel periodisch anzeigen

Forumthread: Ergebnis von Formel periodisch anzeigen

Ergebnis von Formel periodisch anzeigen
30.01.2022 13:33:56
Formel
Liebes Forum.
Ich bin schon länger auf der Suche nach einer Lösung, wurde aber bisher nicht fündig. Ich hoffe, dass ich jetzt keinen doppelten Beitrag eröffne. Nachfolgend die Situation mit meinem Problem.
Ich tracke mein Aktiendepot selbständig mit Hilfe von Excel, es funktioniert so weit ganz gut und ist auch alles automatisiert. Jetzt möchte ich allerdings den Kursverlauf visualisieren. Dazu möchte ich den Depotwert jeweils zu Monatsende festhalten. Die werte sollen in der Tabelle "Depotwert zu Monatsende" als wert (nicht Formel) angezeigt werden. Der Depotwert (Summe der Tabelle "Aktiendepot) wird in einer Formel (Summe der Tabelle) automatisch berechnet. Aus den daraus entstandenen Depotwerten zu Monatsende wird danach ein Liniendiagramm erstellt (siehe Beispieldatei).
Mein Problem ist nun, dass ich keine Lösung finde wie ich den Wert der Formel automatisiert als fixen Wert zum Monatsende festhalte. Bisher kopiere ich den Wert jeweils manuell, ich möchte es allerdings automatisieren, damit ich nicht immer daran denken muss. Ist es möglich diese Problem zu lösen ohne jedes Monatsende die Excel Datei zu öffnen?
Ich habe zur Hilfe eine anonymisierte Beispieldatei mit exemplarischen Werten angehängt.
Schon jetzt vielen Dank für eure Hilfe.
LG
Taiko
Beispieldatei: https://www.herber.de/bbs/user/150766.xlsx
Anzeige

13
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
Das ist löblich, damit BÖRSENHISTORIE() n. unnötig
30.01.2022 14:38:15
lupo1
... strapaziert wird. Denn MS hat schon mal Börsenkurse aufgrund zu hohen Einkaufs nicht mehr bereitgestellt. Daher sollte jeder von uns verantwortlich damit umgehen.
Das "Plattmachen" von Formeln in Werte klappt nur mit Worksheet_Change (bzw. hier mit Workbook_Open) automatisch.
AW: Das ist löblich, damit BÖRSENHISTORIE() n. unnötig
30.01.2022 15:07:13
Taiko
Danke, den Gedanken bezüglich Börsenhistorie hatte ich eben auch...
Workscheet_change ist ein VBA Befehl, sehe ich das richtig? Muss leider gestehen, dass ich mich mit VBA und Makros bisher gar nicht auseinandergesetzt habe. Hatte aber schon die Vermutung, dass es sich nur so lösen lässt.
Dann werde ich mich jetzt einmal diesbezüglich informieren und VBA lernen. Mal schauen ob ichs dann verstehe, wenn nicht kehre ich wieder hierher zurück. :)
Danke einstweilen.
LG Taiko
Anzeige
Dafür muss man aber am Folgemonats-1. öffnen
30.01.2022 18:57:11
lupo1
... und wenn jedesmal nur 1 Kurs hineingeschrieben wird, muss man es sogar jeden Monatsersten tun.
Dabei haben die bereitgestellten Kurse doch auch Datierungen, die man nutzen könnte. Vermutlich beim Datzentyp Aktie genauso, wie bei =BÖRSENHISTORIE().
Anzeige
AW: Dafür muss man aber am Folgemonats-1. öffnen
30.01.2022 19:02:05
Herbert_Grom
BÖRSENHISTORIE habe ich mit der nachfolgenden Formel getestet. Da kommt bei mir immer "#Überlauf"! Was habe ich da falsch gemacht?

=BÖRSENHISTORIE("MSFT";HEUTE()-7;HEUTE();0;1;0;1;2;3;4;5)
Servus
Du hast sie dynamisch definiert
30.01.2022 23:54:04
lupo1
Für die Auswirkung die zu spillenden Zellen vorher löschen.
Um eine Einzelzelle daraus zu machen, stellst Du einen Klammeraffen voran.
Anzeige
AW: Das ist löblich, damit BÖRSENHISTORIE() n. unnötig
30.01.2022 19:09:15
Taiko
Cool, das ist schon eine riesige Erleichterung! Danke.
Das soll jetzt bitte nicht falsch rüberkommen, aber gibt es prinzipiell eine Möglichkeit die Ausführung dieses Makros noch an die MONATSENDE-Funktion zu koppeln?
Alternativ könnte ja das Datum einer HEUTE-Funktion parallel festgehalten werden. Dazu müsste ich ja eigentlich bloß das Makro duplizieren und die Zellbezüge anpassen.
Ich werde das am Dienstag einmal versuchen und halte euch am Laufenden halten. :)
LG
Taiko
Anzeige
AW: Das ist löblich, damit BÖRSENHISTORIE() n. unnötig
31.01.2022 09:02:05
Herbert_Grom
Dann poste doch mal deinen MONATSENDE-Code!
AW: Das ist löblich, damit BÖRSENHISTORIE() n. unnötig
01.02.2022 13:04:40
Taiko
Die MONATSENDE-Fuktion sieht in VBA bei mir wie folgt aus, und nimmt als Ausgangsdatum dann den jeweiligen Tag (sozusagen HEUTE-Funktion).

Sub Monatsende()
Dim DaDatum As Date
DaDatum = Date
MsgBox "Monatsende " & DateSerial(Year(DaDatum), Month(DaDatum) + 1, 1) - 1
End Sub
Mein Problem ist jetzt, dass ich nicht weiß wie ich das Verknüpfe, um das Kopieren des Ergebnisses von der Formel mit MONATSENDE automatisch zu triggern.
LG
Anzeige
AW: Das ist löblich, damit BÖRSENHISTORIE() n. unnötig
01.02.2022 16:09:20
Herbert_Grom
Mit meinem Code ist doch das Datum sekundär, da der Wert immer in die nächste freie Zelle geschrieben wird und damit automatisch in das richtige Datumsfeld! Oder?
AW: Das ist löblich, damit BÖRSENHISTORIE() n. unnötig
01.02.2022 16:30:42
Taiko
Ja da hast du recht, ich wollte bloß wissen ob es möglich ist in deinem Code auch
a) die HEUTE-Funktion parallel, in der Zelle daneben ausgeben zu lassen. Damit wäre es dann schließlich kein Problem mehr sollte man einmal vergessen zu drücken. Somit würden dann eben Wert und Datum immer automatisch miteinander Übereinstimmen.
oder
b) Die Ausführung des Makros nicht an das Klicken sondern das Triggern der Monatsfunktion zu koppeln (weiß aber nicht ob das überhaupt umsetzbar ist!)
Hier stehe ich leider an. Ich schaffe es auch nicht die Heute-Funktion parallel zu deinem Code ablaufen zu lassen.
Ich habe bisher folgendes und scheitere daran, dass das Datum ebenfalls Zeile für Zeile (eine Zeile pro Klick) ausgegeben wird.:

Sub Monatsende()
Dim DaDatum As Date
DaDatum = Date
Worksheets("Tabelle1").Range("H3:H100") = Date
End Sub
Mein Gedanke ist dieses zweite Makro ebenfalls an den Button zu koppeln und dann werden halt zusammengehöriger Wert & Datum gleichzeitig ausgegeben.
Vielen Dank für deine Hilfe.
LG
Anzeige
AW: Das ist löblich, damit BÖRSENHISTORIE() n. unnötig
01.02.2022 16:42:48
Herbert_Grom
Also ich weiß nicht, was du willst! Dein Makro macht nix außer die vorhandenen Formeln in H zu überschreiben, mit dem heutigen Datum! Welchen Sinn soll das machen? Und wenn dir jeden Monat 1 Klick zu viel ist, dann kann ich dir nicht helfen!
Servus
AW: Das ist löblich, damit BÖRSENHISTORIE() n. unnötig
01.02.2022 16:53:37
Taiko
Ist nicht so schlimm, deine Version hilft mir schon enorm.
Der Gedanke war bloß, dass es mit dem zweiten Makro irrelevant wird ob man am 1. oder 3. des Monats klickt, da das jeweilige Datum dann parallel ausgegeben wird.
Einfach nur ein weiterer Luxus Schnick schnack.
Danke für deine Hilfe
LG
Anzeige
;
Anzeige
Anzeige

Infobox / Tutorial

Ergebnis von Formel periodisch anzeigen


Schritt-für-Schritt-Anleitung

  1. VBA-Editor öffnen: Drücke ALT + F11, um den VBA-Editor zu öffnen.

  2. Neues Modul erstellen: Klicke auf Einfügen > Modul.

  3. Makro eingeben: Füge den folgenden Code ein, um den Depotwert zu Monatsende festzuhalten:

    Sub Monatsende()
       Dim DaDatum As Date
       DaDatum = Date
       Worksheets("Depotwert zu Monatsende").Cells(Rows.Count, 1).End(xlUp).Offset(1, 0).Value = _
       Worksheets("Aktiendepot").Range("Depotwert").Value
       Worksheets("Depotwert zu Monatsende").Cells(Rows.Count, 2).End(xlUp).Offset(1, 0).Value = DaDatum
    End Sub
  4. Makro ausführen: Du kannst das Makro manuell ausführen, oder es an einen Button in deiner Excel-Arbeitsmappe koppeln.

  5. Automatisierung einrichten (optional): Du kannst das Makro auch so einstellen, dass es beim Öffnen der Datei oder zu einem bestimmten Zeitpunkt automatisch ausgeführt wird.


Häufige Fehler und Lösungen

  • Fehler: "#Überlauf"

    • Dieser Fehler kann auftreten, wenn die Funktion BÖRSENHISTORIE() nicht korrekt eingegeben wird. Prüfe die Syntax und stelle sicher, dass die eingegebenen Parameter korrekt sind.
    • Beispiel:
      =BÖRSENHISTORIE("MSFT";HEUTE()-7;HEUTE();0;1;0;1;2;3;4;5)
  • Lösung: Falsche Zellreferenzen

    • Achte darauf, dass die Zellreferenzen in deinem VBA-Code korrekt sind. Überprüfe, ob die Tabellenblätter und Zellbezüge existieren.

Alternative Methoden

  • Verwendung von Excel-Funktionen: Du kannst die MONATSENDE()-Funktion in Kombination mit einem WENN()-Befehl nutzen, um den Depotwert automatisch am Monatsende zu erfassen.
  • Power Query: Wenn du nicht mit VBA arbeiten möchtest, kannst du auch Power Query verwenden, um Daten zu importieren und zu transformieren.

Praktische Beispiele

Hier ist ein einfaches Beispiel, wie du die BÖRSENHISTORIE()-Funktion in Excel verwenden kannst, um historische Börsendaten zu erhalten:

=BÖRSENHISTORIE("AAPL";DATUM(2023;1;1);HEUTE();0;1;0;1;2;3;4;5)

In diesem Beispiel wird der historische Kurs von Apple (AAPL) von einem bestimmten Datum bis zum heutigen Datum abgerufen. Du kannst diese Daten dann in deinem Diagramm verwenden, um eine Visualisierung der Börsenhistorie zu erstellen.


Tipps für Profis

  • Automatisierung mit Zeitsteuerung: Nutze Task-Scheduler von Windows, um deine Excel-Datei zu einem bestimmten Zeitpunkt zu öffnen und das Makro automatisch auszuführen.
  • Datenvisualisierung: Erstelle ein Liniendiagramm, um die Depotwerte über die Zeit zu visualisieren. Nutze die gesammelten Daten aus der "Depotwert zu Monatsende"-Tabelle.
  • Regelmäßige Backups: Stelle sicher, dass du regelmäßig Backups deiner Excel-Dateien machst, um Datenverlust zu vermeiden.

FAQ: Häufige Fragen

1. Wie kann ich das Makro automatisch ausführen lassen? Du kannst das Makro mit dem Workbook_Open-Ereignis verknüpfen, sodass es automatisch beim Öffnen der Datei ausgeführt wird.

2. Was ist BÖRSENHISTORIE()? Die BÖRSENHISTORIE()-Funktion in Excel ermöglicht es dir, historische Börsendaten für bestimmte Aktien zu importieren und zu analysieren.

3. Kann ich das Makro an einen Button binden? Ja, du kannst einen Button in Excel erstellen und das Makro so einstellen, dass es bei einem Klick auf den Button ausgeführt wird.

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Entdecke mehr
Finde genau, was du suchst

Die erweiterte Suchfunktion hilft dir, gezielt die besten Antworten zu finden

Suche nach den besten Antworten
Unsere beliebtesten Threads

Entdecke unsere meistgeklickten Beiträge in der Google Suche

Top 100 Threads jetzt ansehen
Anzeige