Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
820to824
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
820to824
820to824
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

Makro stoppt unbemerkt wg. Fehlermeldung

Makro stoppt unbemerkt wg. Fehlermeldung
23.11.2006 17:42:36
HannaG.
Hallo,
mein Excelsheet wirft zuweilen Fehlermelungen wie "Typen unverträglich" usw. aus. Verursacht durch kurzfristige Übertragungsfehler aus anderer Datenbank. Eigentlich nicht schlimm. Die Werte werden mit der Zeit korregiert, die Fehlermeldung ist also obsolet. Dummerweise scheint das Makro im Hintergrund allerdings dadurch gestoppt werden und läuft nicht mehr automatisch an. Und ich sitz am Bildschirm und merke davon nichts... Kann man das ändern? Das es automatisch neustartet nach z.b. 2 Minuten? Oder kann man einen Button installieren, wo man zuweilen mal draufklickt?
Gruß
Hanna

8
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Makro stoppt unbemerkt wg. Fehlermeldung
23.11.2006 17:59:52
Andi
Hi,
wenn Du den Fehler wirklich irgnorieren willst, und Di Dir sicher bist, dass auch sonst keine Fehler auftreten können, die schlimmeres mit Deinem sheet anstellen, dann schreib
On Error Resume Next
an den Anfang Deines Makros. Dann wird im Fehlerfall einfach so getan, als wär nix passiert.
Sauberer wär's allerdings, Dein Makro so zu programmieren, dass der Fehler vorher abgefangen wird.
Schönen Gruß,
Andi
AW: Makro stoppt unbemerkt wg. Fehlermeldung
23.11.2006 22:44:15
HannaG.
Hallo,
wo genau soll dein Code hin? Oben kommt ein freundliches "Fehler beim Compilieren", wenn ich dein Teil oben hinsetze.
Gruß
Hanna
Dim myArray(50)
Dim bolTimer As Boolean
On Error Resume Next
Sub Show_change()
For i = 8 To 50
If Range("M" & i).Value myArray(i - 8) Then
If Not (Range("M" & i).Value = 0) And Not (Range("M" & i).Value = Chr(133)) Then
Application.ScreenUpdating = False
Rows(i).Copy
Rows(2).PasteSpecial xlPasteValues
Application.CutCopyMode = False
Range("M" & i).Select
Call sndPlaySound32("c:\cowbell", 1)
Application.ScreenUpdating = True
End If
myArray(i - 8) = Range("M" & i)
End If
Next i
Call Timer
End Sub
Sub Timer()
Dim NextTime As Date
If Not bolTimer Then Exit Sub
NextTime = Now + TimeValue("00:00:02")
Application.OnTime NextTime, "Tabelle2.Show_Change"
End Sub
Sub initialize_array()
For i = 8 To 50
myArray(i - 8) = Range("M" & i)
Next i
End Sub
Sub Start_Ueberwachung()
initialize_array
bolTimer = True
Timer
End Sub
Sub Stopp_Ueberwachung()
bolTimer = False
End Sub

Private Sub Worksheet_SelectionChange(ByVal Target As Range)
End Sub

Anzeige
AW: Makro stoppt unbemerkt wg. Fehlermeldung
24.11.2006 09:27:25
Andi
Hi,
die Zeile muss am Anfang jeder einzelnen sub stehen, in der der Fehler auftreten kann.
Schönen Gruß,
Andi
AW: Makro stoppt unbemerkt wg. Fehlermeldung
23.11.2006 18:50:35
ChrisL
Hallo Hanna
Wäre interessant das Makro zu sehen, vielleicht ist die Korrektur einfach (falsche Variablen Deklaration) oder auch nicht.
Gruss
Chris
PS: Alternative betr. Fehlerbehandlung

Sub Makro1()
On Error GoTo ErrorHandler
'    Hier Dein Code
Exit Sub
ErrorHandler:
Dim AntwortMsg As Variant
Beep
AntwortMsg = MsgBox(Err.Description + Chr(10) + Chr(10) + "Neustart?", vbCritical + vbYesNo, "Fehler: " & Err.Number)
If AntwortMsg = vbYes Then
Err = 0
Call Makro1
End If
End Sub

Anzeige
AW: Makro stoppt unbemerkt wg. Fehlermeldung
23.11.2006 22:41:46
HannaG.
Das ist der Code. Hab deinen Code übrigens wohl nicht richtig plaziert. Wo soll der genau hin? Vorne und einfach hinten dran führt zu Fehlermeldung.
Dim myArray(50)
Dim bolTimer As Boolean
Sub Show_change()
For i = 8 To 50
If Range("M" & i).Value myArray(i - 8) Then
If Not (Range("M" & i).Value = 0) And Not (Range("M" & i).Value = Chr(133)) Then
Application.ScreenUpdating = False
Rows(i).Copy
Rows(2).PasteSpecial xlPasteValues
Application.CutCopyMode = False
Range("M" & i).Select
Call sndPlaySound32("c:\cowbell", 1)
Application.ScreenUpdating = True
End If
myArray(i - 8) = Range("M" & i)
End If
Next i
Call Timer
End Sub
Sub Timer()
Dim NextTime As Date
If Not bolTimer Then Exit Sub
NextTime = Now + TimeValue("00:00:02")
Application.OnTime NextTime, "Tabelle2.Show_Change"
End Sub
Sub initialize_array()
For i = 8 To 50
myArray(i - 8) = Range("M" & i)
Next i
End Sub
Sub Start_Ueberwachung()
initialize_array
bolTimer = True
Timer
End Sub
Sub Stopp_Ueberwachung()
bolTimer = False
End Sub

Private Sub Worksheet_SelectionChange(ByVal Target As Range)
End Sub

Anzeige
AW: Makro stoppt unbemerkt wg. Fehlermeldung
24.11.2006 11:28:45
ChrisL
Hallo
Mit folgender Änderung verhinderst du Fehler betr. Datentyp:
If Not (Range("M" & i).Text = "0") And Not (Range("M" & i).Text = Chr(133)) Then
Gruss
Chris
AW: Makro stoppt unbemerkt wg. Fehlermeldung
27.11.2006 09:55:33
HannaG.
Daran hängt es:
#WERT! erscheint in der angesprochenen Zelle M.
Beruht auf der Formel in M
=WENN(B21-C21&gt0;(B21-C21);"")
Dabei ist C korrekt eine Zahl, aber in B taucht halt zuweilen durch DDE-Fehler halt das "..." auf, daß ich leider nur in M ausgeschlossen habe.
Ist es besser, in M #WERT! auszuschließen oder in B und C das "..."?
Gruß
Hanna
AW: Makro stoppt unbemerkt wg. Fehlermeldung
27.11.2006 13:21:42
ChrisL
Hallo Hanna
Ändere die Formel auf:
=WENN(ISTFEHLER(B21-C21);"";B21-C21)
Gruss
Chris
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige