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

Zugriff auf Workbook mit ID

Zugriff auf Workbook mit ID
Peter
Hallo VBA Spezialisten,
Ich öffne die Datei WebData.xlsm in einer eigenen Instanz mit dem Befehl Shell, damit auch bei einem Absturz oder Einfrieren der Datei WebData.xlsm die aufrufenden Excel Datei weiter arbeiten kann.
Ich benutze zum Öffnen folgenden Befehl
ID_webdata = Shell("C:\Program Files\Microsoft Office\OFFICE14\EXCEL.EXE C:\SIO\Optimierung\Webdata.xlsm")
Wie kann ich nun auf Zellen der Datei Webdata.xlsm zugreifen, wenn mir die nur die ID_webdata zur Verfügung steht?
Besten Dank im Voraus.
Grüße
Peter

3
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Benutzer
Anzeige
AW: Zugriff auf Workbook mit ID
27.11.2011 19:09:22
Josef

Hallo Peter,
Sub peter()
  Dim xlApp As Application, objWB As Workbook
  
  
  Set xlApp = CreateObject("Excel.Application")
  
  Set objWB = xlApp.Workbooks.Open("C:\SIO\Optimierung\Webdata.xlsm")
  
  'jetzt kannst du auf dia Mappe zugreifen
  
  objWB.Sheets(1).Range("A1") = "Hallo!"
  
  objWB.Close True
  
  xlApp.Quit
  
  
  Set objWB = Nothing
  Set xlApp = Nothing
End Sub



« Gruß Sepp »

Anzeige
AW: Zugriff auf Workbook mit ID
27.11.2011 19:43:02
Peter
Hallo Josef,
Danke für deine rasche Antwort.
Leider funktioniert deine Methode nicht, wenn das Workbook auf diese Art geöffnet wird und das geöffnete Workbook hängen bleibt. Es nach dem Öffnen des neuen Workbooks geht es in den aufrufenden Datei weiter.
Mit Shell wird ein neuer Thread gestart, der sich ums Öffnen der Datei kümmert und das aufrufende Programm kann sofort weiter arbeiten bzw. in einer Schleife bis zum Eintreifen von gültigen Daten oder bei Timeout abrechnen. Frage nochmals:
Wie kann ich aus der von durch die Shell gewonnenen ID auf die durch die Shell geöffnete Datei zugreifen?
Grüße
Peter
Anzeige
AW: Zugriff auf Workbook mit ID
27.11.2011 22:37:10
Josef

Hallo Peter,
versuche es mal so.
' **********************************************************************
' Modul: Modul2 Typ: Allgemeines Modul
' **********************************************************************

Option Explicit

#If VBA6 Then
Private Declare PtrSafe Sub Sleep Lib "kernel32" (ByVal dwMilliseconds As Long)
#Else
Private Declare Sub Sleep Lib "kernel32" (ByVal dwMilliseconds As Long)
#End If

Sub peter()
  Dim objWB As Workbook
  Dim ID_webdata As Long
  Dim dblTime As Double
  
  Const cstrFile As String = "E:\Forum\katalog.xls" '"C:\SIO\Optimierung\Webdata.xlsm"
  
  ID_webdata = Shell("""C:\Program Files\Microsoft Office\OFFICE14\EXCEL.EXE"" " & cstrFile)
  
  Sleep 5000 'Zeit zum laden geben
  
  On Error Resume Next
  dblTime = Timer
  Do
    Set objWB = CreateObject(cstrFile)
    Sleep 200
  Loop While objWB Is Nothing Or Timer - dblTime > 10 'Timeout
  On Error GoTo 0
  
  If Not objWB Is Nothing Then
    objWB.Sheets(1).Range("A1") = "Hallo Welt!99"
    objWB.IsAddin = False 'sonst ist die Mappe nachher "unsichtbar"
    objWB.Save
    objWB.Parent.Quit
  End If
  
  Set objWB = Nothing
End Sub



« Gruß Sepp »

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige