Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1536to1540
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

VBA Code bringt Excel zum absturz

VBA Code bringt Excel zum absturz
21.01.2017 12:19:07
Marco
Morgen =)
Ich habe ein großes Problem bei mir stürzt Excel ab, wenn ich diesen VBA Code verwende:
Private Sub Worksheet_Calculate()
If IsNumeric(Range("A1")) Or IsNumeric(Range("C1")) Then '--Pruefung ob Zahl
Range("A3") = Range("C1")
Range("A2").Value = 3
End If
End Sub
Der Code überprüft nur ob sich was in A1 oder C1 geändert hat wenn ja soll in A3 und A2 was eingetragen werden. Das funktioniert auch wunderbar und am ende erhalte ich dann diesen Fehler: nicht genügend Stapelspeicher und Excel stürzt ab.
Ich muss dazu sagen das die Werte aus A1, A2 und A3 in einem Diagramm abgebildet werden welches ich mithilfe von Namensmanager und der Funktion =BEREICH.VERSCHIEBEN..... dynamisch gemacht habe. Kann es sein das sich VBA und das dynamische Diagramm sich nicht vertragen?
Grüße Marco

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

Betreff
Datum
Anwender
Anzeige
AW: VBA Code bringt Excel zum absturz
21.01.2017 12:28:09
Hajo_Zi
Hallo Marco,
die Aktion wird mehrmals ausgeführt.
Option Explicit
Dim BoCVarible As Boolean
Private Sub Worksheet_Calculate()
If BoCVarible = False Then
If IsNumeric(Range("A1")) Or IsNumeric(Range("C1")) Then '--Pruefung ob Zahl
BoCVarible = True
Range("A3") = Range("C1")
Range("A2").Value = 3
BoCVarible = False
End If
End If
End Sub

AW: VBA Code bringt Excel zum absturz
21.01.2017 13:26:17
Marco
Wow danke für die schnelle Antwort Hajo der Fehler ist weg es läuft =)
Jetzt würde ich dich gerne noch etwas Fragen. Wenn A1 leer ist verändert sich nichts und die Werte bleiben in A2 und A3 stehen. Kann man dem Code auch sagen das wenn A1 leer ist soll A2 und A3 auch wieder leer sein? Aber A1 ist eigentlich nie leer weil da ja eine Formel drin steht es zeigt nur leer an, wenn kein wert berechnet wird. geht das dann überhaupt?
Grüße Marco
Anzeige
AW: VBA Code bringt Excel zum absturz
21.01.2017 13:30:01
Hajo_Zi
Hallo Marco,
Option Explicit
Dim BoCVarible As Boolean
Private Sub Worksheet_Calculate()
If BoCVarible = False Then
If IsNumeric(Range("A1")) Or IsNumeric(Range("C1")) Then '--Pruefung ob Zahl
BoCVarible = True
Range("A3") = Range("C1")
Range("A2").Value = 3
BoCVarible = False
End If
If Range("A1")="" Then
BoCVarible = True
Range("A3").ClearContents
Range("A2").ClearContents
BoCVarible = False
End If
End Sub
Gruß Hajo
AW: VBA Code bringt Excel zum absturz
22.01.2017 00:49:45
Marco
Hajo der Code geht super ich bekomme auch keine Fehlermeldung mehr wie vorher echt cool =)
Ich habe den Code jetzt neue Zellen zugewissen und die Abfrage soll von N17 bis N26 durchgeführt werden. Jetzt meine Frage kann ich die abfrage von N17 bis N26 durchführen lassen ohne das ich den Code 10 mal untereinander kopiere? Das wird nämlich ziemlich lang.
Der Code sieht aktuell so. Ich habe ihn 4 mal bis jetzt kopiert. Kann man da eine schleife drüber legen?
Option Explicit
Dim BoCVarible As Boolean
Private Sub Worksheet_Calculate()
If BoCVarible = False Then
If IsNumeric(Range("N17")) Or IsNumeric(Range("H8")) Then '--Pruefung ob Zahl
BoCVarible = True
Range("L17") = Range("H8")
Range("M17") = Range("N17")
Range("K17").Value = 1
BoCVarible = False
End If
If Range("N17") = "" Then
BoCVarible = True
Range("L17").ClearContents
Range("M17").ClearContents
Range("K17").ClearContents
BoCVarible = False
End If
End If
If BoCVarible = False Then
If IsNumeric(Range("N18")) Or IsNumeric(Range("H8")) Then '--Pruefung ob Zahl
BoCVarible = True
Range("L18") = Range("H8")
Range("M18") = Range("N18")
Range("K18").Value = 2
BoCVarible = False
End If
If Range("N18") = "" Then
BoCVarible = True
Range("L18").ClearContents
Range("M18").ClearContents
Range("K18").ClearContents
BoCVarible = False
End If
End If
If BoCVarible = False Then
If IsNumeric(Range("N19")) Or IsNumeric(Range("H8")) Then '--Pruefung ob Zahl
BoCVarible = True
Range("L19") = Range("H8")
Range("M19") = Range("N19")
Range("K19").Value = 3
BoCVarible = False
End If
If Range("N19") = "" Then
BoCVarible = True
Range("L19").ClearContents
Range("M19").ClearContents
Range("K19").ClearContents
BoCVarible = False
End If
End If
If BoCVarible = False Then
If IsNumeric(Range("N20")) Or IsNumeric(Range("H8")) Then '--Pruefung ob Zahl
BoCVarible = True
Range("L20") = Range("H8")
Range("M20") = Range("N20")
Range("K20").Value = 4
BoCVarible = False
End If
If Range("N20") = "" Then
BoCVarible = True
Range("L20").ClearContents
Range("M20").ClearContents
Range("K20").ClearContents
BoCVarible = False
End If
End If
.............usw....
End Sub

Grüße Marc
Anzeige
AW: VBA Code bringt Excel zum absturz
22.01.2017 08:31:38
Hajo_Zi

Option Explicit
Dim BoCVarible As Boolean
Private Sub Worksheet_Calculate()
Dim LoI As Long
For LoI = 17 To 20
If BoCVarible = False Then
If IsNumeric(Range("N" & LoI)) Or IsNumeric(Range("H8")) Then '--Pruefung ob Zahl
BoCVarible = True
Range("L" & LoI) = Range("H8")
Range("M" & LoI) = Range("N" & LoI)
Range("K" & LoI).Value = 1
BoCVarible = False
End If
If Range("N17") = "" Then
BoCVarible = True
Range("L" & LoI).ClearContents
Range("M" & LoI).ClearContents
Range("K" & LoI).ClearContents
BoCVarible = False
End If
End If
Next LoI
End Sub

Gruß Hajo
Anzeige
AW: VBA Code bringt Excel zum absturz
22.01.2017 09:38:45
Marco
Danke Hajo =)

299 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige