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

File in eigener Instanz

File in eigener Instanz
03.05.2017 09:38:15
TCO99
Hallo zusammen,
ich arbeite wieder an meinem Programm und brauche Hilfe. Eine Recherche im Archiv hat keine Ergebnisse gebracht.
Während der Laufzeit blende ich Excel aus (Application.Visible = False) und lasse nur die UserForm anzeigen.
Das Programm läuft gut und macht keine Probleme. Das Problem aber ist, dass während Excel ausgeblendet wird, auch alle anderen Excel-Files ausgeblendet werden, die zu der Zeit bereits liefen. Sie werden erst sichtbar, wenn mein Programm wieder beendet wird. Ein paralleles Arbeiten an verschiedenen Files ist so nicht möglich.
Eine Lösung wäre, wenn mein Programm in einer eigenen Excel-Instanz gestartet werden könnte. Dann könnte ich Excel ausblenden ohne die anderen Excel-Files zu beeinflussen.
Ich gehe davon aus, dass man das nicht als eine Art Startmakro hinterlegen kann, weil zur Ausführung des Makros bereits das Excel gestartet sein muss. Und dann ist es natürlich zu spät, um es in einer eigenen Instanz zu starten.
Vielleicht gibt es noch andere Lösungen?
Vielleicht ein Batch, was das kann?
Gruß
Erdogan
PS: Feedback ist selbstverständlich.

13
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: File in eigener Instanz
03.05.2017 12:29:34
Rudi
Hallo,
und warum blendest du nicht nur die Mappe aus?
Gruß
Rudi
AW: File in eigener Instanz
03.05.2017 13:01:26
TCO99
Hallo Rudi,
wie geht das genau?
Ich würde es mal testen und dann ein Feedback geben.
Gruß
Erdogan
AW: File in eigener Instanz
03.05.2017 22:37:59
Uduuh
Hallo,
z.B.
Windows(Thisworkbook.name).visible=false
Gruß aus’m Pott
Udo

AW: File in eigener Instanz
04.05.2017 10:20:40
TCO99
Hallo Uduuh,
danke für deine Antwort.
Leider führt dein Vorschlag in meinem Fall nicht zum Erfolg. Bereits beim Start des Programms bekomme ich folgende Fehlermeldung:
Userbild
Hinzu kommt, dass Excel als Hintergrund weiterhin zu sehen ist.
Vielleicht hilft es, wenn ihr mir die Frage beantworten könntet, ob man mittels eines Batch mein Excel-File in einer separaten Instanz starten könnte.
Gruß
Erdogan
Anzeige
File in eigener Instanz mit VB Script
04.05.2017 16:04:43
Anton
Hallo Erdogan,
folgenden Code als .vbs Datei speichern und ausführen:
Set xlApp = CreateObject("Excel.Application")
xlApp.visible = false
wscript.sleep 10000
xlApp.workbooks.open "C:\Users\Anton\Desktop\ARB_RAUM_2.xlsm"'Pfad anpassen
Set xlApp = Nothing
mfg Anton
AW: File in eigener Instanz mit VB Script
04.05.2017 17:27:43
TCO99
Hallo Anton,
vielen Dank für deine Antwort.
Ich kann es morgen im Büro testen und Rückmeldung geben.
Ist es auch möglich, dass der Code nur eine Kopie des Files startet? Vielleicht geht es, wenn der Code sich quasi eine Kopie von "C:\Users\Anton\Desktop\ARB_RAUM_2.xlsm" zieht, diese auf z.B. D:/ ablegt und dann diese Kopie startet?
Der Vorteil: so wäre das Original-File unangetastet.
Der Hintergrund: das File soll von verschiedenen Netzwerkusern gleichzeitig genutzt werden.
Dank und Gruß
Erdogan
Anzeige
AW: File in eigener Instanz mit VB Script
06.05.2017 14:07:09
Anton
Hallo Erdogan,
probier es hiermit:
Code:

Set fso = CreateObject("Scripting.FileSystemObject")  
pfad_zur_Datei = "\\vboxsrv\Downloads\Win\ARB_RAUM_2.xlsm"  'anpassen
Ordner_lokal = "C:\temp\"  'anpassen
With fso
  If Not .fileexists(pfad_zur_Datei) Then  
    MsgBox "Datei " & pfad_zur_Datei & " nicht gefunden!" & _
            vbCr & "Script wird abgebrochen.", _
            vbCritical + vbOKOnly, "Fehler"
    wscript.Quit
  Else
    Set f = .GetFile(pfad_zur_Datei)  
  End If  
  If Not .folderexists(Ordner_lokal) Then    
    MsgBox "Ordner " & Ordner_lokal & " nicht gefunden!" & _
            vbCr & "Script wird abgebrochen.", _
            vbCritical + vbOKOnly, "Fehler"
    wscript.Quit
  Else
    f.Copy Ordner_lokal & f.Name
  End If  
End With  
Set xlApp = CreateObject("Excel.Application")  
xlApp.Visible = False
wscript.sleep 10000
xlApp.Workbooks.Open Ordner_lokal & f.Name  
Set fso = Nothing  
Set xlApp = Nothing  


mfg Anton
Anzeige
AW: File in eigener Instanz mit VB Script
10.05.2017 11:24:39
TCO99
Hallo Anton,
mit dem erweiterten Code lief es einmal und danach nicht mehr. Daher bin ich zu dem kürzeren Code übergegangen, in der Hoffnung, dass es besser funktioniert. Leider hat das auch nicht funktioniert.
Ich habe zwei Varianten getestet:
Userbild
und
Userbild
Die DOX-Box erscheint aber die Datei wird nicht gestartet. Wenn ich die Datei nach dem Fehlversuch nicht über die vbs, sondern manuell starte, bekomme ich folgende Meldung:
Userbild
Woran kann es liegen?
Grüße
Erdogan
Anzeige
AW: File in eigener Instanz mit VB Script
10.05.2017 16:22:50
Anton
Hallo Erdogan,
ich kann mir vorstellen, dass du jetzt im Ordner eine temporere Datei hast, wenn du die löschst, dann funktioniert das Ganze einmal wieder.Um dieses Verhalten zu vermeiden, musst du deine Datei aus deinem VBA Code sauber schliessen und die Excel-Applikation beenden.Etwa so:
'Datei schliessen mit Speichern
ThisWorkbook.Close True
'Excel beenden
Application.Quit

mfg Anton
AW: File in eigener Instanz mit VB Script
11.05.2017 10:34:44
TCO99
Hallo,
leider funktioniert jetzt nichts mehr. Deswegen würde ich gerne einen neuen Versuch starten.
Könnten wir einen Code derart erstellen, dass folgendes geschieht?
1. Eine bestimmte Excel-Datei wird aus einem vordefinierten Quellordner in einen vordefinierten Zielordner kopiert.
2. Aus dem Zielordner wird diese Kopie in einer eigenen Excel-Instanz gestartet.
3. Die Excel-Instanz wird NICHT ausgeblendet. Wenn nötig, würde das später geschehen.
Ich würde gerne den bisherigen Códe hineinkopieren aber dann kommt es zu Problemen und mein Beitrag wird nicht veröffentlicht.
Danke schön und Gruß
Erdogan
Anzeige
AW: File in eigener Instanz mit VB Script
11.05.2017 15:55:14
Anton
Hallo Erdogan,
ersetze

xlApp.visible = false
durch

xlApp.visible = true
mfg Anton
AW: File in eigener Instanz mit VB Script
12.05.2017 09:16:13
TCO99
Hallo Anton,
ich habe die Änderung vorgenommen und jetzt funktioniert es.
Ich habe die Wartezeit gekürzt, weil 10 Sekunden mir wie eine Ewigkeit vorkamen und hoffe, dass das keine Negativen Auswirkungen haben wird
wscript.sleep 1000
Ich bedanke mich ganz herzlich für deine geduldige Unterstützung.
Viele Grüße
Erdogan
Nachtrag
10.05.2017 14:53:41
TCO99
Ich habe im Screenshot und im Code jeweils einen anderen Dateinamen (123.xlsx und ABC.xlsx) aber das ist kein Fehler, sondern ich habe nur den Screenshot und den Code geändert um den Dateinamen kurz zu halten. Bitte nicht denken, dass hier der Fehler liegt.
Anzeige

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige