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

Automatisierungsfehler Das aufgerufene Objekt wurd

Automatisierungsfehler Das aufgerufene Objekt wurd
Susanne
++++++++++++++++++++++++++++++++++++++++
bitte sämtliche Threads bisher einfach mal vergessen
++++++++++++++++++++++++++++++++++++++++
via "Application.OnTime #4:04:00 AM#, "test" wird folgendes Makro aufgerufen:
Sub test()
Windows("DE.xls").Activate
Sheets("data test").Select
Range("B2400:B2499").Select
Selection.Copy
Range("M2400").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
Application.CutCopyMode = False
Range("A1").Select
Sheets("ze1").Activate
Range("A1").Activate
With ActiveSheet
.Range("A7:AZ2500").Sort Key1:=.Range("D7"), Order1:=xlDescending, Header:=xlNo, _
OrderCustom:=1, MatchCase:=False, Orientation:=xlTopToBottom
End With
Sheets("#NVi").Select
End Sub
Dabei erhalte ich, nachdem das Makro bereits fast problemlos durchgelaufen ist, folgenden Laufzeitfehler:
Automatisierungsfehler -2147417848 (80010108)
Das aufgerufene Objekt wurde von den Clients getrennt

Diese beiden Zeilen am Ende des Makro-Codes sind gelb unterlegt:
.Range("A7:AZ2500").Sort Key1:=.Range("D7"), Order1:=xlDescending, Header:=xlNo, _
OrderCustom:=1, MatchCase:=False, Orientation:=xlTopToBottom
was ist daran falsch? Was bedeutet die Fehlermeldung?
Der Fehler tritt nur dann auf, wenn Excel im Hintergrund läuft. Ist das Excel-Fenster im Fokus und Vordergrund, läuft das Makro komplett durch.
AW: Automatisierungsfehler Das aufgerufene Objekt wurd
11.10.2010 07:25:24
Klaus-Dieter
Hallo Susanne,
schmeiß die (ohnehin überflüssigen) Selectanweisungen raus. Die funktionieren nur im aktiven Tabellenblatt.
Viele Grüße Klaus-Dieter

Online-Excel
AW: Automatisierungsfehler Das aufgerufene Objekt wurd
11.10.2010 08:46:45
Susanne
die Select-Anwesiungen laufen doch prima. Die lösen den Fehler nicht aus.
AW: Automatisierungsfehler Das aufgerufene Objekt wurd
11.10.2010 07:39:52
fcs
Hallo Susanne,
das Problem wird durch Wiederholung der Fragen ja nicht gelöst.
Ich schlage vor, dass du Select und Activate im Code bei der gewünschten Ausführung schlicht und einfach mal aus deinem Wortschatz innerhalb von Prozeduren streichst.
Ich hab deine gewüschten Funktionen jetzt mal in einer Test-Datei getestet unter Windows Vista, Office 2007
Größe der Datei ca. 13 MB, Im Blatt ze1 Bereich A6:AZ2500 gefüllt mit Daten und Formeln.
Im Blatt ze2 im Bereich A6:A2500 die gleichen Werte wie in Blatt ze1. In B6:AZ2500 werden per SVERWEIS die Werte aus Blatt ze1 geholt.
Diese Anordnung ist sehr rechenintensiv und Excel brauch ca. eine halbe Minute, um die Datei neu zu berechnen. CPU-Leistung geht nach 100% und bei meinem Notebook erhöht manchmal der CPU-Lüfter seine Drehzahl. Gleichzeitig hatte ich Word, einen Texteditor und Firefox am Laufen.
Aber auch wenn Excel dabei zum Teil mit dem Status keine Rückmeldung angezeigt wird und das Programmfenster von Excel ein erschreckendes Bild zeigt, so erholte sich das System immer wieder.
Warum dann bei dir das Betriebssystem bzw. Excel dann im Kopierschritt sich scheinbar nicht mehr kennen: ? Zu viele/rechenintensive andere Anwendung gleichzeitig aktiv und damit Resourcen-Probleme?
Nachfolgend der von mir getestete Code.
Gruß
Franz
Sub Timeplus20s()
Dim dtime As Date
'test nach 20 Sekunden starten
dtime = Time + TimeSerial(0, 0, 20)
Application.OnTime Earliesttime:=dtime, Procedure:="Test"
End Sub
Sub test()
Dim StatusCalc As Long
With Application
.ScreenUpdating = False
StatusCalc = .Calculation
If StatusCalc  xlCalculationManual Then .Calculation = xlCalculationManual
.EnableEvents = False
End With
With Workbooks("test.xls")
With .Worksheets("ze1").Range("A7:Z2500")
.Calculate
.Copy
.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, _
SkipBlanks:=False, Transpose:=False
Application.CutCopyMode = False
End With
Application.Calculate
End With
Call Sortieren
With Application
.ScreenUpdating = True
StatusCalc = .Calculation
If StatusCalc  .Calculation Then .Calculation = StatusCalc
.EnableEvents = True
End With
End Sub
Sub Sortieren()
With Workbooks("test.xls").Worksheets("ze2")
.Range("A7:AZ2500").sort Key1:=.Range("F7"), Order1:=xlDescending, Header:=xlNo, _
OrderCustom:=1, MatchCase:=False, Orientation:=xlTopToBottom
End With
End Sub

Anzeige
AW: Automatisierungsfehler Das aufgerufene Objekt wurd
11.10.2010 08:49:34
Susanne
der Kopierschritt läuft doch problemlos, der Sortier-Schritt retourniert den Fehler. Und ja, natürlich ist das Excel extrem rechnerintensiv (wird mit Daten aus der DDE-Schnittstelle gefüttert), aber ich hab auch einen Quad-CPU, Auslastung etwa 50%.
Weist diese Fehlermeldung auf Ressourcen-Probleme hin oder wie? Und wenn ja, wieso läufts dann problemlos wenn das Excel im Vordergrund bleibt?
AW: Automatisierungsfehler Das aufgerufene Objekt wurd
11.10.2010 08:56:59
Klaus-Dieter
Hallo Susanne,
du kannst uns das ruhig glauben: Select funktioniert nur in aktiven Tabellenblättern. Ausserdem ist das auch ein Resourcenfresser.
Viele Grüße Klaus-Dieter

Online-Excel
Anzeige
AW: Automatisierungsfehler Das aufgerufene Objekt wurd
11.10.2010 08:58:49
Susanne
das glaub ich euch auch, aber es hängt irgendwie nicht mit dem Fehler und auch nicht mit meinen Fragen zusammen
AW: Automatisierungsfehler Das aufgerufene Objekt wurd
11.10.2010 09:27:29
Klaus-Dieter
Hallo Susanne,
wem nicht zu raten ist, dem ist auch nicht zu helfen. Ich bin raus.
Viele Grüße Klaus-Dieter

Online-Excel
AW: Automatisierungsfehler Das aufgerufene Objekt wurd
12.10.2010 02:33:57
fcs
Hallo Susanne,
wenn das Excel-Makro gestartet wird, wenn eine andere Anwendung aktiv ist, dann scheint in Excel noch irgend ein anders Ergeignis ausgelöst zu werden, das den nachfolgenden Aufruf der Sortierfunktion blockiert.
Da ich bei umfangreichen Makros fast immer mit Deaktivierung von Ereignis-Makros und Bildschirmaktualisierung arbeite war mir hier bisher kein Zusammenhang aufgefallen.
In deinem Fall müssen die Ereignismakros vorübergehend deaktiviert werden.
Gruß
Franz
Sub test()
Dim StatusCalc As Long
With Application
.ScreenUpdating = False
'    StatusCalc = .Calculation
'    If StatusCalc  xlCalculationManual Then .Calculation = xlCalculationManual
.EnableEvents = False
End With
Windows("DE.xls").Activate
Sheets("data test").Select
Range("B2400:B2499").Select
Selection.Copy
Range("M2400").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
Application.CutCopyMode = False
Range("A1").Select
Sheets("ze1").Activate
Range("A1").Activate
With ActiveSheet
.Range("A7:AZ2500").sort Key1:=.Range("D7"), Order1:=xlDescending, Header:=xlNo,  _
_
OrderCustom:=1, MatchCase:=False, Orientation:=xlTopToBottom
End With
Sheets("#NVi").Select
With Application
.ScreenUpdating = True
'    If StatusCalc  .Calculation Then .Calculation = StatusCalc
.EnableEvents = True
End With
End Sub

Anzeige
AW: Automatisierungsfehler Das aufgerufene Objekt wurd
12.10.2010 05:13:07
Susanne
welches andere Ereignis denn? Was soll da noch zusätzlich ausgelöst werden, was dann das Sortieren blockiert?!
AW: Automatisierungsfehler Das aufgerufene Objekt wurd
12.10.2010 07:57:43
fcs
Hallo Susanne,
ich beschreibe nur was ich jetzt beobachtet habe. Wenn ich wüsste was für ein Ereignis, dann hätte ich es geschrieben.
Mit Deaktivierung der Events funktioniert das Makro bei mir auch dann wenn es via OnTime oder anders gestartet wird, wenn gerade eine andere Anwendung aktiv ist. Ohne Deaktivierung wird bei mir auch die von dir beschriebene Fehlermeldung angezeigt und Excel geht in einen Zustand über, der nur durch Schliessen von Excel und Neustart beseitigt werden kann.
Ich hab jetzt nicht probiert, ob man die Deaktivierung und Reaktivierung von EnableEvents auch an anderer Position im Code eingefügt werden kann. Evtl. reicht es unmittelbar vor dem Sortieren EnableEvents auf False zu setzen und unmttelbar danach wieder auf True.
Ab jetzt bin ich per Ferndiagnose mit meinem Latein am Ende.
Mit einem letzten Gruß (auch wenn du inzwischen auf diese Form der Höflichkeit verzichtest)
Franz
Anzeige
AW: Automatisierungsfehler Das aufgerufene Objekt wurd
12.10.2010 08:32:04
Susanne
Hallo fcs,
ach, das is ja mal interessant - bei dir tritt dieser Fehler auch auf? Du kannst aber nicht genau sagen, *was* da blockiert?
lg
wann ist endlich Schluss.....
12.10.2010 08:36:47
zu
AW: wann ist endlich Schluss.....
12.10.2010 08:39:05
Susanne
was soll das? Ich finde es sehr interessant dass fcs den Fehler jetzt auch hat
AW: Automatisierungsfehler Das aufgerufene Objekt wurd
12.10.2010 08:49:14
Susanne
Ohne Deaktivierung wird bei mir auch die von dir beschriebene Fehlermeldung angezeigt und Excel geht in einen Zustand über, der nur durch Schliessen von Excel und Neustart beseitigt werden kann.
und du kannst nicht sagen, *was* da genau blockiert? Das is ja krass wenn du exakt denselben Fehler erhältst...
Ich hab jetzt nicht probiert, ob man die Deaktivierung und Reaktivierung von EnableEvents auch an anderer Position im Code eingefügt werden kann. Evtl. reicht es unmittelbar vor dem Sortieren EnableEvents auf False zu setzen und unmttelbar danach wieder auf True.
yep, klappt!
lg
Anzeige
AW: Dann schliesse ich diesen Thread
12.10.2010 19:52:28
fcs
o.t.

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige