Live-Forum - Die aktuellen Beiträge
Datum
Titel
28.03.2024 21:12:36
28.03.2024 18:31:49
Anzeige
Archiv - Navigation
900to904
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
900to904
900to904
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

zu wenig ressourcen

zu wenig ressourcen
29.08.2007 15:07:00
Rainer
Hallo Excelgemeinde
Ich habe hier einen unangenehmen Effekt, den ich gerne loswerden möchte. Ich habe aber noch nicht herausgefunden wie ich das tun soll.
Ich hab in der "Datei 1" diverse Bezüge in 12 andere Dateien. Diese sind je 15-20mb gross (nur daten)
Nun hab ich mir jetzt in der Datei1 ein makro geschrieben, das zuerst alle 12 Dateien öffnet, dann alle Zellen neu berechnet und dann die 12 files wieder schliesst.
Wenn ich nämlich die zellen neu berechnen möchte wenn die 12 Dateien geschlossen sind, krieg ich "bezug".
Das Problem ist nun, dass sobald die Dateien geschlossen werden, jedesmal die Meldung: "Microsoft Excel kann diesen vorgang mit den verfügbaren Ressourcen nicht ausführen. Bitte wählen Sie weniger Daten aus oder schliessen Sie andere Programme."
Ich stelle aber fest, dass alles richtig aktualisiert wird.
Gibt es eine Möglichkeit via Vba code diesen Fehler abzufangen damit er nicht mehr auftaucht?
Interessant finde ich noch, dass wenn ich die Datei1, wohere die Bezüge in die anderen Dateien gesetzt sind ca. 700kb gross ist, wenn ich es speichere solange die 12 Dateien geöffnet sind. Wenn ich die Datei1 aber abspeichere nachdem ich alle anderen geschlossen habe, ist sie 21 mb gross. Weshalb ist dies so?
viele Grüsse
Rainer

4
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: zu wenig ressourcen
29.08.2007 15:37:06
Renee
Hi Rainer,
Ich hab leider auch zuwenig Ressourcen um das Problem zu lösen.
Den Fehler mit VBA abfangen, ist vermutlich nicht möglich und IMHO auch nicht sinnvoll. Denn was würdest Du nach dem Abfangen tun?
Besser wäre es, Du könntest Dein Makro effizienter gestalten, so dass nicht alle Dateien gleichzeitig offen sind. Aber dazu müsste man mehr über Deinen Code wissen.
Greetz Renee

AW: zu wenig ressourcen
29.08.2007 15:53:27
Rainer
hallo Renee
ist mir grundsätzlich klar, dass es keinen sinn machen würde, das abzufangen, denn aus einem Grund gibts ja diese Meldung. Ich habe das gefühl, dass es vorallem an den komplizieren formeln liegt. Es gib ja die Möglichkeit mit vba die Formeln (oder nur Endwerte) in Zellen zu schreiben. Kann man das auf eine Einfache art in vba umschreiben, ohne für jede einzelne Zelle definieren zu müssen was gemacht wird. denn bei ein rund 1000 bezügen wäre das nicht machbar.
Hier hab ich noch das File
http://www.uploadagent.de/files/1188395492/P_L_Customer.xls
der code ist denkbar einfach, deshalb glaub ich auch nicht, dass es daran liegt.

Sub Kalkulieren()
Dim wbkQuelle1 As Workbook
Dim wbkQuelle2 As Workbook
Dim wbkQuelle3 As Workbook
Dim wbkQuelle4 As Workbook
Dim wbkQuelle5 As Workbook
Dim wbkQuelle6 As Workbook
Dim wbkQuelle7 As Workbook
Dim wbkQuelle8 As Workbook
Dim wbkQuelle9 As Workbook
Dim wbkQuelle10 As Workbook
Dim wbkQuelle11 As Workbook
Dim wbkQuelle12 As Workbook
If wbkQuelle1 Is Nothing Then
Set wbkQuelle1 = Workbooks.Open("J:\FinanzControlling\Leitung\Kundenrentabilität\Projekt 2007\ _
Tool\Data\raw data\07_01_BD.xls")
End If
If wbkQuelle2 Is Nothing Then
Set wbkQuelle2 = Workbooks.Open("J:\FinanzControlling\Leitung\Kundenrentabilität\Projekt 2007\ _
Tool\Data\raw data\07_02_BD.xls")
End If
If wbkQuelle3 Is Nothing Then
Set wbkQuelle3 = Workbooks.Open("J:\FinanzControlling\Leitung\Kundenrentabilität\Projekt 2007\ _
Tool\Data\raw data\07_03_BD.xls")
End If
If wbkQuelle4 Is Nothing Then
Set wbkQuelle4 = Workbooks.Open("J:\FinanzControlling\Leitung\Kundenrentabilität\Projekt 2007\ _
Tool\Data\raw data\07_04_BD.xls")
End If
If wbkQuelle5 Is Nothing Then
Set wbkQuelle5 = Workbooks.Open("J:\FinanzControlling\Leitung\Kundenrentabilität\Projekt 2007\ _
Tool\Data\raw data\07_05_BD.xls")
End If
If wbkQuelle6 Is Nothing Then
Set wbkQuelle6 = Workbooks.Open("J:\FinanzControlling\Leitung\Kundenrentabilität\Projekt 2007\ _
Tool\Data\raw data\07_06_BD.xls")
End If
If wbkQuelle7 Is Nothing Then
Set wbkQuelle7 = Workbooks.Open("J:\FinanzControlling\Leitung\Kundenrentabilität\Projekt 2007\ _
Tool\Data\raw data\07_07_BD.xls")
End If
If wbkQuelle8 Is Nothing Then
Set wbkQuelle8 = Workbooks.Open("J:\FinanzControlling\Leitung\Kundenrentabilität\Projekt 2007\ _
Tool\Data\raw data\07_08_BD.xls")
End If
If wbkQuelle9 Is Nothing Then
Set wbkQuelle9 = Workbooks.Open("J:\FinanzControlling\Leitung\Kundenrentabilität\Projekt 2007\ _
Tool\Data\raw data\07_09_BD.xls")
End If
If wbkQuelle10 Is Nothing Then
Set wbkQuelle10 = Workbooks.Open("J:\FinanzControlling\Leitung\Kundenrentabilität\Projekt 2007\ _
Tool\Data\raw data\07_10_BD.xls")
End If
If wbkQuelle11 Is Nothing Then
Set wbkQuelle11 = Workbooks.Open("J:\FinanzControlling\Leitung\Kundenrentabilität\Projekt 2007\ _
Tool\Data\raw data\07_11_BD.xls")
End If
If wbkQuelle12 Is Nothing Then
Set wbkQuelle12 = Workbooks.Open("J:\FinanzControlling\Leitung\Kundenrentabilität\Projekt 2007\ _
Tool\Data\raw data\07_12_BD.xls")
End If
Calculate
wbkQuelle1.Close False
wbkQuelle2.Close False
wbkQuelle3.Close False
wbkQuelle4.Close False
wbkQuelle5.Close False
wbkQuelle6.Close False
wbkQuelle7.Close False
wbkQuelle8.Close False
wbkQuelle9.Close False
wbkQuelle10.Close False
wbkQuelle11.Close False
wbkQuelle12.Close False
Sheets("Abfrage Customer").Select
End Sub


Gruss
Rainer

Anzeige
AW: zu wenig ressourcen
29.08.2007 16:14:00
Rudi
Hallo,
reicht es nicht, wenn man die Files nacheinander öffnet, anstatt alle gleichzeitig?

Sub Kalkulieren()
Dim wbkQuelle(1 To 12) As Workbook, intCounter As Integer
For intCounter = 1 To 12
On Error Resume Next
Set wbkQuelle(intCounter) = Workbooks("07_" & Format(intCounter, "00") & "_BD.xls")
On Error GoTo 0
If wbkQuelle(intCounter) Is Nothing Then
Set wbkQuelle(intCounter) = Workbooks.Open("J:\FinanzControlling\Leitung\" _
& "Kundenrentabilität\Projekt 2007\Tool\Data\raw data\" _
& "07_" & Format(intCounter, "00") & "_BD.xls")
End If
Calculate
wbkQuelle(intCounter).Close False
Next intCounter
Sheets("Abfrage Customer").Select
End Sub


Gruß
Rudi
Eine Kuh macht Muh, viele Kühe machen Mühe

Anzeige
AW: zu wenig ressourcen
29.08.2007 16:22:00
Rainer
Guten Abend Rudi
Die idee war, dass erst neu berechnet werden, wenn alle Files offen sind, da ich sonst den "bezug" oder "wert" bekomme, da er es nicht schafft alles zu ziehen.
Ich habe nun zu testzwecken alles auf einen Monat reduzeirt. d.h. ich hab nur noch Bezüge in eine Datei, zudem hab ich datenmenge von 20mb auf 7 reduziert in der Quelldatei.
Sobald ich aber in eine Zelle mit einem Bezug gehe. Krieg ich diese Meldung. Nur wenn die Quelldatei geöffnet ist, rechnet er problemlos. Nur kommt dann die Meldung beim Schliessen des Files.
Sehr merkwürdig finde ich..?
Gruss
rainer
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige