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

Berechnung verlangsamen ... wg. MIS Alea

Berechnung verlangsamen ... wg. MIS Alea
10.07.2006 10:34:47
Falk
Hallo alle zusammen,
die unten aufgeführten Makros arbeiten ohne Fehler, daß Problem stellt sich bei der Berechnung von DBGET-Formeln, die ich benutze um Werte aus einer ALEA Datenbank zu erhalten. Ohne Makro funktioniert dies auch fehlerfrei.
Jetzt zum Problem, wenn ich das Makro ausführe, fängt die Datei an zu rechnen, kopiert das berechnete Blatt in eine neue Datei, ändert alle Formeln in Werte und wechselt wieder in die Ursprungsdatei, ändert den Verkäufernamen und fängt wieder von vorne an.
Dies funktioniert auch, mal fünfmal, mal zehnmal etc. hintereinander, bis die Berechnung nicht mehr funktioniert, die Aleaformln nur noch "WERT" übergeben.
Wenn ich dann das Makro abbreche, berechnen sich die Formeln wieder ganz normal und von ganz alleine.
Wie kann ich die Berechnung noch mehr verlangsamen (außer so wie ich es gemacht habe!) und wie kann ich evtl. den Zwischenpeicher zwischendurch von löschen?
Danke für Eure Hilfe im voraus.
Grüße
Falk

Sub Bericht_drucken()
Dim i As Integer
Dim m As Integer
Dim k As Integer
For k = 1 To 15
Sheets("Parameter").Range("C18").Value = k
Berechnen
m = Sheets("Parameter").Cells(19, 2).Value
For i = m To 1 Step -1                          'Schleife für die APC_VERK Steuerung
Sheets("Parameter").Cells(17, 2).Value = i
Berechnen
In_Datei_Speichern
Next
Datei_Speichern                                     'Funktion: Speichert und schließt die Auswertungsdateien für die APCs
Next
Sheets("Parameter").Range("C18").Value = "Makro Stop"
End Sub


Function In_Datei_Speichern()
Dim j As String
j = Sheets("WSR").Range("V7").Value
Sheets("WSR").Select
Sheets("WSR").Copy Before:=Workbooks(j).Sheets(1)
Cells.Select
Selection.Copy
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
ActiveSheet.Name = Range("C2").Value
Application.CutCopyMode = False
Windows("Alea WSR Auswertung 2007 V2.xls").Activate
End Function


Function Berechnen()
Calculate
For e = 0 To 100000000
Next e
End Function

7
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Berechnung verlangsamen ... wg. MIS Alea
10.07.2006 10:38:51
Mustafa
Hallo Falk,
Statt der for next Schleife nimm lieber diesen Code:
newHour = Hour(Now())
newMinute = Minute(Now())
newSecond = Second(Now()) + 10
waitTime = TimeSerial(newHour, newMinute, newSecond)
Application.Wait waitTime
Dabei kannst du die Zeit die du warten möchtest ganz einfach in Sekunden angeben.
Rückmeldung wäre nett.
Viele Grüße aus Köln.
AW: Berechnung verlangsamen ... wg. MIS Alea
10.07.2006 11:25:32
Falk
Hallo Mustafa,
danke für Deine Hilfe, nach dem ersten Makrolauf kommt der Fehler wieder :-(
Kann es ein Zwischenspeicherfehler sein ...
Grüße
Falk
AW: Berechnung verlangsamen ... wg. MIS Alea
10.07.2006 11:48:38
Mustafa
Hallo Falk,
kann es villeicht daran liegen das du bei diesen beiden :

Function In_Datei_Speichern()
Dim j As String
j = Sheets("WSR").Range("V7").Value
Sheets("WSR").Select
Sheets("WSR").Copy Before:=Workbooks(j).Sheets(1)
Cells.Select
Selection.Copy
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
ActiveSheet.Name = Range("C2").Value
Application.CutCopyMode = False
Windows("Alea WSR Auswertung 2007 V2.xls").Activate
End Function


Function Berechnen()
Calculate
For e = 0 To 100000000
Next e
End Function

Eine Funktion statt einer

Sub genommen hast.
Was anderes fällt mir leider auch nicht ein.
Und den Zwischenspeicher leerst du ja schon mit Application.CutCopyMode = False
Rückmeldung wäre nett.
Viele Grüße aus Köln.
PS: Ich stell die Frage nochmal auf offen.

Anzeige
AW: Berechnung verlangsamen ... wg. MIS Alea
10.07.2006 12:08:32
Falk
Hallo Mustafa,
wie spreche ich in einem Sub () denn ein anderes Sub() an, versuche dann mal diese Version, ...
Sorry wenn ich mich nicht immer gleich melde, aber die Arbeit ,_)
Grüße
Falk
AW: Berechnung verlangsamen ... wg. MIS Alea
10.07.2006 12:31:34
Mustafa
Hallo Falk,
zum zu spät melden.
Keine Ursache bin auch auf der Arbeit und melde mich auch immer etwas verspätet.
Zur Sub() aufruf:
zB.
Statt:

Function Berechnen()
Calculate
For e = 0 To 100000000
Next e
End Function


Sub Berechnen()
Calculate
For e = 0 To 100000000
Next e
End Sub

und dann im ersten Makro :
call Berechnen
Rückmeldung wäre nett.
Anzeige
AW: Berechnung verlangsamen ... wg. MIS Alea
10.07.2006 14:13:21
Falk
Hallo Mustafa,
danke für Deine Hilfe, aber dieser undefinierbare Fehler bleibt, mal bekomme ich fünf Blätter, mal nur eines, mal neun fehlerfrei berechnet, dann tritt dieser Fehler wieder auf ... habe auch die Zwischenspeicherleerung überall verteilt ... jetzt muß ich mal MIS Support anfordern, vielleicht liegt es am Alea Speicher ...
Was mich nur wunder, dieselben Makro in eine artgleichen Datei funktionieren schon seit eineinhalb Jahr fehlerfrei ... ?
Aber habe wieder etwas gelernt ...
Danke für Deine Hilfe
Grüße aus Essen
Falk
AW: Berechnung verlangsamen ... wg. MIS Alea
10.07.2006 15:15:04
Dr.
Mit der launischen Neukalkulation von ALEA-Verknüpfungen schlage ich mich auch schon seit geraumer Zeit herum, bin aber bis dato noch zu keiner Lösung gekommen.
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige