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

Forumthread: Makro/VBA: Neu berechnen bis

Makro/VBA: Neu berechnen bis
07.09.2019 08:00:47
Ga7er
Guten Morgen zusammen,
bislang konnte ich dank Hilfeseiten und Foren wie diesem meine Excel-„Probleme“ meist selbst lösen. Doch da ich mich mit Makros und VBA nicht auskenne, benötige ich Eure Hilfe.
Folgender Sachverhalt:
In A1 wird eine Zufallszahl zwischen 1 und 1000 generiert.
In B1 steht eine WENN-Funktion. Wenn in A1 (sagen wir mal) 123 steht, soll in B1 „Ja“ stehen, ansonsten „Nein“.
Beide Zellen sind von der Formel her kein Problem. Jedoch lasse ich die Datei derzeit per manuelle Tastenkombination neu berechnen. Dies hätte ich gern per Makro/VBA automatisiert.
Und so stelle ich mir das vor:
Zwei Schaltflächen, einmal mit START, einmal mit STOP.
Sobald START gedrückt wird, soll die Datei solange neuberechnet werden, bis in B1 „JA“ steht.
Um keine Endlosschleife zu erzeugen (oder damit es nicht zu lange dauert), soll diese Schleife nach der Hundertsten Neuberechnung enden. Und natürlich auch, wenn die Schaltfläche STOP gedrückt wird.
Als Bonus wäre es auch interessant, wenn C1 die Anzahl der Schleife anzeigt, in der sich die Neuberechnung gerade befindet.
Ich nutze übrigens die 2008er Excel-Version für den MAC.
Schon einmal vielen Dank im Voraus!
Ich freue mich auch auf Links, die zu Seiten führen, die dieses Problem/diesen Sachverhalt zum Thema haben.
Anzeige

6
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Makro/VBA: Neu berechnen bis
07.09.2019 08:29:37
Hajo_Zi
trage die Zahl die ja ergibt von Hand ein, dies soll ja nur einmal passieren.
Wenn die Zahl erreicht wurd soll die Formel in A1 ja gelöscht werden.

Beiträge von Werner, Luc, robert, J.O.Maximo und folgende lese ich nicht.
Die Beiträge werden auch ignoriert, es erfolgt keine Antwort.
Anzeige
AW: Makro/VBA: Neu berechnen bis
07.09.2019 08:36:14
Ga7er
Guten Morgen, und danke für deine Antwort!
Der von mir geschilderte Sachverhalt ist eine Vereinfachung der Datei, mit der ich arbeite.
In der richtigen Datei werden mehrere Zufallszahlen gebildeten und anderen Zahlen gegenübergestellt bzw. überprüft. Die manuelle Neuberechnung ist jedoch leider sehr zeitaufwendig, so dass eine Automatisierung mir sehr helfen würde.
Anzeige
AW: Makro/VBA: Neu berechnen bis
07.09.2019 09:27:11
Ga7er
Hallo Nepumuk!
Ich habe mir die Datei heruntergeladen und geöffnet. Wenn ich jedoch START drücke, erscheint die Fehlermeldung, dass Excel das Makro "131894.xlsm'!TimerStart" nicht finden kann. Das kommt wahrscheinlich, weil ich Excel für Mac verwende, oder?
Auf dem ersten Blick sieht die Datei jedoch so aus, wie ich sie mir vorgestellt habe!
Könntest du vielleicht den Code hinter der Schaltfläche START/STOP schreiben? Dann würde ich den bei mir einfügen und testen.
Nochmals vielen Dank!
Anzeige
AW: Makro/VBA: Neu berechnen für MAC
07.09.2019 09:37:47
Nepumuk
Hallo,
da kann ich dir nicht weiterhelfen da ich keinen MAC habe. Ich lass die Frage offen.
Gruß
nepumuk
AW: Makro/VBA: Neu berechnen für MAC
07.09.2019 09:39:44
Ga7er
Ich habe gerade einmal selbst nachgeschaut und gelesen, dass meine Excel-Version kein VBA unterstützt ...
Also werde ich mir mal eine neuere Version zulegen und mir deine Datei danach noch einmal anschauen. Dir aber noch einmal vielen Dank!
Anzeige
;

Forumthreads zu verwandten Themen

Anzeige
Anzeige
Anzeige

Infobox / Tutorial

Automatisierte Neuberechnung in Excel mit VBA


Schritt-für-Schritt-Anleitung

  1. Öffne Excel und erstelle ein neues Arbeitsblatt.
  2. Generiere Zufallszahlen in Zelle A1. Du kannst die Formel =ZUFALLSZAHL()*1000 verwenden, um eine Zufallszahl zwischen 1 und 1000 zu generieren.
  3. Füge eine WENN-Funktion in Zelle B1 hinzu, um „Ja“ oder „Nein“ anzuzeigen. Ein Beispiel wäre: =WENN(A1=123;"Ja";"Nein").
  4. Erstelle zwei Schaltflächen (START und STOP):
    • Gehe zu „Entwicklertools“ > „Einfügen“ > „Schaltfläche (Formularsteuerelement)“.
  5. Füge den VBA-Code für die Schaltflächen hinzu. Öffne den VBA-Editor (ALT + F11) und füge den folgenden Code ein:
Dim i As Integer
Dim running As Boolean

Sub TimerStart()
    running = True
    i = 0
    Do While running And i < 100
        Application.Calculate
        If Range("B1").Value = "Ja" Then
            running = False
        End If
        i = i + 1
        Range("C1").Value = i ' Anzahl der Schleife anzeigen
        DoEvents ' Ermöglicht Excel, andere Aufgaben zu erledigen
    Loop
End Sub

Sub TimerStop()
    running = False
End Sub
  1. Verknüpfe die Schaltflächen mit den entsprechenden Makros:
    • Rechtsklicke auf die START-Schaltfläche und wähle „Makro zuweisen“. Wähle TimerStart.
    • Mache das Gleiche für die STOP-Schaltfläche und wähle TimerStop.

Häufige Fehler und Lösungen

  • Fehlermeldung beim Starten des Makros: Vergewissere dich, dass die Makros in deinen Excel-Einstellungen aktiviert sind.
  • Makro funktioniert nicht auf Mac: Ältere Excel-Versionen für Mac unterstützen kein VBA. Überlege, ein Update auf eine neuere Version durchzuführen.
  • Schaltflächen funktionieren nicht: Achte darauf, dass die Schaltflächen korrekt mit den Makros verknüpft sind.

Alternative Methoden

Wenn du keine Makros verwenden kannst, gibt es auch die Möglichkeit, die Neuberechnung manuell über das Menü „Formeln“ > „Berechnung“ > „Jetzt berechnen“ durchzuführen. Dies ist jedoch weniger effizient, wenn du viele Werte hast.


Praktische Beispiele

Ein Beispiel für eine einfache Excel-Tabelle könnte so aussehen:

A B C
123 Ja 1
456 Nein
789 Nein

In diesem Fall wird A1 immer wieder neu berechnet, bis in B1 „Ja“ erscheint. C1 zeigt die Anzahl der Versuche an.


Tipps für Profis

  • Nutze die Funktion „Excel alles neu berechnen“ (F9), um alle Blätter in der Arbeitsmappe neu zu berechnen.
  • Setze die Berechnung auf „Manuell“, wenn du die Kontrolle über die Neuberechnung behalten möchtest.
  • Verwende Fehlerbehandlungsroutinen in deinen VBA-Skripten, um mögliche Laufzeitfehler elegant abzufangen.

FAQ: Häufige Fragen

1. Unterstützt Excel für Mac VBA?
Ältere Versionen, wie Excel 2008 für Mac, unterstützen kein VBA. Du solltest auf eine neuere Version wechseln.

2. Wie kann ich die Neuberechnung erzwingen?
Du kannst die Neuberechnung manuell mit der Taste F9 oder durch das Erstellen eines „Excel neu berechnen Buttons“ tun, der ein Makro ausführt.

3. Was kann ich tun, wenn meine Schaltflächen nicht reagieren?
Überprüfe die Verknüpfungen zu den Makros und stelle sicher, dass die Makros aktiviert sind.

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