872 Aufrufe
Gefragt in Tabellenkalkulation von ericmarch Experte (4.6k Punkte)
Hallo!

Vielleicht fragt sich gleich jemand was für ein Kraut ich geraucht hätte…

Gegeben sind 2 Mappen. A hält Rohdaten und muss makrofrei sein. B sammelt Daten, hat aber noch Nebenjobs die Ideen wie AutoOpen ausschließen. A wie B können von anderen Usern in Beschlag sein, da hilft nur Nachrichten zu senden oder sie per Fernwartung zu beschlagnahmen.
Mappe C wird vom Scheduler gestartet und lädt optimal A wie B wobei Makros in B ferngesteuert werden. Geht öffnen nicht gibt C Laut per Nachrichtendienst und wartet…

Wenn A offen ist belegt sie Ressourcen und B läuft Faktor 2 bis 3 (gefühlt noch mehr) langsamer als ohne A… C hinwiederum möchte den Fisch A, wenn an der Angel, nicht wieder loslassen (die Daten in A sollten zeitnah sein, erst B zu holen und zu sammeln und dann auf A zu warten ist witzlos).

Schnapsidee: Ich starte aus C heraus (wenn A frei ist) eine Instanz von Excel die A öffnet und festhält während B loslegt. Dann wird A freigegeben und von der Instanz in der B läuft geladen und die Sache abgeschlossen.

Kurz - ich möchte eine freie Mappe blockieren aber nicht so öffnen, dass sie den Verkehr aufhält.

Eric March

3 Antworten

0 Punkte
Beantwortet von paul1 Experte (4.9k Punkte)
Hallo Eric,

Habe mir die Problemstellung mehrmals durchgelesen und festgestellt, dass es zu viele Möglichkeiten der gegenseitigen Behinderung gibt.

Hier glaube ich wäre es am Vernünftigsten, sich vor Ort mit einem Netzwerkspezialisten zu besprechen, um diese Probleme auszuräumen.

So weiterzuarbeiten ist für meine Begriffe nicht mehr lustig.


Paul1

Excel 2003
0 Punkte
Beantwortet von ericmarch Experte (4.6k Punkte)
Äh, tja… Der Netzwerkfuzzi bin ich.

Da ist so nichts zu drehen, und wir haben uns an die Mängel von Excel gewöhnt (eine Datenbank wäre auch nicht förderlich als Lösung). FileSharing ist mit XL97/2k halt nicht drin.

Der Kern hier ist, dass ich eben eine Datei so blockieren will, dass sie der Automatik (die allermeist eh außerhalb der Arbeitszeit läuft) auch nach dem ersten Teilschritt zur Verfügung bleibt, siehe den Hinweis mit der zeitlichen Aktualität.

Gibt's da keinen kleinen Trick den Daumen auf der Datei zu behalten? Eine fremde XL-Instanz jedenfalls gibt de Anderen Meldung, dass die Datei offen ist - aber wie kriege ich die wieder kontrolliert zu?

Eric March
0 Punkte
Beantwortet von ericmarch Experte (4.6k Punkte)
Kalk, ick hör dir rieseln…

Manchmal ist es so peinlich simpel , dass es wehtut… Nun muss sich nur erweisen ob da auch die Ressourcen geschont bleiben. (Habe gerade das Gefühl, den Klapparatismus nun gleich ganz anders stricken zu müssen, wenns so schön einfach geht.)

Das hier lag als Baustein nämlich im Groben schon lange in der Schublade:
Dim EggSell As Object
Set EggSell = CreateObject("Excel.Application")
EggSell.Visible = False
EggSell.Workbooks.Open "X:\Projekte\Datei.xls"

MsgBox "Mach mal!"

EggSell.ActiveWorkbook.Close (False)
EggSell.Quit
Set EggSell = Nothing

(Sämtliche Eierverkäufer mögen mir vergeben, aber es klingt doch nun mal so schön ähnlich!)
›Drumrum‹ wurde vorher die Verfügbarkeit gecheckt und nun würde unsere Datei erneut und in dann dieser Instanz aufgemacht usw.

Eric March
...