Live-Forum - Die aktuellen Beiträge
Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

vbs script funktioniert nicht mehr

vbs script funktioniert nicht mehr
13.12.2012 08:30:54
Snewi
Moin,
ich habe auf meinem Rechner Excel 2003 und Excel 2007 installiert!
Nun habe ein vbs Script was die ganze Zeit funktioniert hat und meine .xlsm Datei geöffnet hat! Seit neuestem wird aber Excel 2003 geöffnet und nicht mehr das 2007!
Muss ich am Script was ändern?

Dim objExcel
Dim objWorkbook
Set objExcel = CreateObject("excel.application")
Set objWorkbook = objExcel.Workbooks.Open("U:\Berichte\Zeit_Ber.xlsm")
objExcel.Visible = True
objExcel.DisplayAlerts = False
objWorkbook.Close
Danke und Gruß

11
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
ins blaue geraten:
13.12.2012 08:40:44
Klaus
Hi Snewi,
womit öffnet sich denn ein Excelsheet, wenn du einfach im Windows-Explorer doppelclickst? Auch mit 2003? Wenn ja, dann setze hier einfach über "öffnen mit" das Standardprogramm auf "2007".
Keine Ahnung ob vbs sich von den Windows-Dateieinstellungen beeindrucken lässt, aber einen Versuch ist es Wert (sind ja nur ein paar clicks).
Grüße,
Klaus M.vdT.

AW: ins blaue geraten:
13.12.2012 09:31:56
Snewi
Nein dann mit 2007, mit 2003 nur wenn ich das manuell vorher öffne!
Hab den Dateityp mal umgestellt, trotzdem gehts nicht :-(
Gruß

AW: ins blaue geraten:
13.12.2012 14:27:19
Ralf_P
Hallo Snewi,
bei 2 Excelversionen muss man ggf. genau referenzieren, welche starten soll.
Es gibt den Schlüssel
"\HKEY_LOCAL_MASCHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\ App Paths\Excel.exe" - "Path"
Vielleicht hilft das weiter.
Sub Test()
Dim xlAnw As Object
Set xlAnw = CreateObject("excel.application")
MsgBox xlAnw.version & " " & xlAnw.Path
Set xlAnw = Nothing
End Sub

Gruß Ralf

Anzeige
AW: ins blaue geraten:
14.12.2012 08:33:58
Snewi
Guten Morgen,
@Ralf du hattest recht, bei mir wird Excel 2003 angezeigt! Warum auch immer aufeinmal :-(
Hab den Path mal auf Excel 12.0 zeigen lassen es wird aber irgendwie nicht übernommen!
Dein Code zeigt immer noch Excel 2003 an :-(
Userbild
Was muss ich hier tun?
Gruß

Anzeige
AW: ins blaue geraten:
14.12.2012 10:12:38
Ralf_P
Hallo Snewi,
speicher doch mal folgenden Code als ChkOffice.vbs und starte das script:
Dim WSHShell, objFSO, textout
Set objFSO = CreateObject("Scripting.FileSystemObject")
Set WSHShell = CreateObject("WScript.Shell")
Dim part(4,1)
part(0,0) = "Word" : part(1,1) = "WINWORD.EXE"
part(1,0) = "Excel" : part(2,1) = "EXCEL.EXE"
part(2,0) = "Outlook" : part(4,1) = "OUTLOOK.EXE"
part(3,0) = "PowerPoint" : part(0,1) = "POWERPNT.EXE"
part(4,0) = "Access" : part(3,1) = "MSACCESS.EXE"
textout = "Installierte Office-Anwendungen:" & vbCRLF & vbCRLF
Call ChkOffice("11.0","2003")
Call ChkOffice("10.0","XP")
Call ChkOffice("9.0", "2000")
Call ChkOffice("8.0", "97")
MsgBox textout,64,"CheckOffice.vbs"
Function ChkOffice(ver, verfull)
Dim pfad, res, helptext
On Error Resume Next
pfad = "HKLM\Software\Microsoft\Office\" & ver & "\Common\InstallRoot\Path"
res = WSHShell.RegRead(pfad)
If res  "" Then
For i = 0 to 4
If objFSO.FileExists(res&part(i,1)) Then
helptext = part(i,0) & Space(1) & verfull & "  (" & objFSO.GetFileVersion(res&part(i,1))&")" _
textout = textout & helptext & vbCRLF
End If
Next
textout = textout & vbCRLF
End If
End Function

Hier wurde das Thema auch behandelt:
http://www.office-loesung.de/ftopic468455_0_0_asc.php
VG, Ralf

Anzeige
AW: ins blaue geraten:
14.12.2012 10:51:58
Snewi
Es kommt der Fehler Typen unverträglich: "CHKOffice"
Mach bestimmt was falsch, was mache ich mit der Function?
Gruß

AW: ins blaue geraten:
14.12.2012 13:21:54
Ralf_P
wird nur falsch dargestellt,
den gesamten Text
von
Dim WSHShell, objFSO, textout
bis
End Function
in den Editor kopieren und als ChkOffice.vbs speichern und ausführen.
Hier kanns Du auch nachlesen:
http://www.office2010-hilfe.de/knowledge/kb_show.php?id=55
VG, Ralf

falscher Code, 2007 vergessen
14.12.2012 10:16:59
Ralf_P
Hallo Snewi,
habe 2007 nachgetragen:
Dim WSHShell, objFSO, textout
Set objFSO = CreateObject("Scripting.FileSystemObject")
Set WSHShell = CreateObject("WScript.Shell")
Dim part(4,1)
part(0,0) = "Word" : part(1,1) = "WINWORD.EXE"
part(1,0) = "Excel" : part(2,1) = "EXCEL.EXE"
part(2,0) = "Outlook" : part(4,1) = "OUTLOOK.EXE"
part(3,0) = "PowerPoint" : part(0,1) = "POWERPNT.EXE"
part(4,0) = "Access" : part(3,1) = "MSACCESS.EXE"
textout = "Installierte Office-Anwendungen:" & vbCRLF & vbCRLF
Call ChkOffice("12.0","2007")
Call ChkOffice("11.0","2003")
Call ChkOffice("10.0","XP")
Call ChkOffice("9.0", "2000")
Call ChkOffice("8.0", "97")
MsgBox textout,64,"CheckOffice.vbs"
Function ChkOffice(ver, verfull)
Dim pfad, res, helptext
On Error Resume Next
pfad = "HKLM\Software\Microsoft\Office\" & ver & "\Common\InstallRoot\Path"
res = WSHShell.RegRead(pfad)
If res  "" Then
For i = 0 to 4
If objFSO.FileExists(res&part(i,1)) Then
helptext = part(i,0) & Space(1) & verfull & "  (" & objFSO.GetFileVersion(res&part(i,1))&")" _
textout = textout & helptext & vbCRLF
End If
Next
textout = textout & vbCRLF
End If
End Function

Anzeige
AW: falscher Code, 2007 vergessen
14.12.2012 12:52:22
Snewi
Hab jetzt einfach mal Excel 2003 deinstalliert! Aber nun wird keine Datei mehr von 2007 erkannt!
Ich kann auch in den Ordneroptionen die Dateiendung nicht zuweisen!
Oh mann was kann ich noch tun?
Gruß

AW: falscher Code, 2007 vergessen
14.12.2012 14:12:56
Snewi
So habs mit ner Office Reperatur versucht jetzt gehts wieder :-) Danke und geschlossen

319 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige