Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

Betriebssystem auslesen

Forumthread: Betriebssystem auslesen

Betriebssystem auslesen
27.10.2003 10:08:42
Detlef D
Guten Morgen zusammen,
weiß vieleicht jemand wie man auslesen kann, mit welchem Betriebssystem der Rechner läuft auf dem man sich gerade befindet? Habe das Problem das ich ein Makro habe das sich etwas unterschiedlich verhalten muß, je nach dem auf welchem Betriebssystem es gestartet wird.

Vielen Dank schon mal...

Gruß,
Detlef
Anzeige

5
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Betriebssystem auslesen
27.10.2003 10:14:47
Hajo_Zi
Hallo Detlef


Sub tes()
If Application.OperatingSystem = "Windows (32-bit) NT 5.00" Then
MsgBox "Windows 2000"
ElseIf Application.OperatingSystem = "Windows (32-bit) NT 5.01" Then
MsgBox "XP Pro"
End If
End Sub


Falls Code vorhanden wurde dieser getestet unter Betriebssystem XP Pro und Excel Version XP SBE.
Bitte keine Mail, Probleme sollten im Forum gelöst werden.
Microsoft MVP für Excel
Das Forum lebt auch von den Rückmeldungen.


Anzeige
AW: Betriebssystem auslesen
27.10.2003 10:20:58
ANdreas
Hallo Detlef,

das geht so:

Private Declare Function GetVersionEx Lib "kernel32" Alias _
"GetVersionExA" (lpVersionInformation As OSVERSIONINFO) _
As Long

Private Type OSVERSIONINFO
dwOSVersionInfoSize As Long
dwMajorVersion As Long
dwMinorVersion As Long
dwBuildNumber As Long
dwPlatformId As Long
szCSDVersion As String * 128
End Type

Const VER_PLATFORM_WIN32_WINDOWS = 1
Const VER_PLATFORM_WIN32_NT = 2


Private Sub ErmittelnBS()
Dim PlatForm As String, OSVersion As OSVERSIONINFO
OSVersion.dwOSVersionInfoSize = Len(OSVersion)
GetVersionEx OSVersion
PlatForm = "Unbekanntes Betriebssystem"
With OSVersion
If .dwPlatformId = VER_PLATFORM_WIN32_WINDOWS Then
If .dwMinorVersion = 0 Then
PlatForm = "Windows 95"
If .szCSDVersion = "B" Then
PlatForm = PlatForm & " OSR2"
Else
PlatForm = PlatForm & Left$(.szCSDVersion, 2)
End If
ElseIf .dwMinorVersion = 10 Then
PlatForm = "Windows 98"
If .szCSDVersion = "A" Then
PlatForm = PlatForm & " SE"
End If
ElseIf .dwMinorVersion = 90 Then
PlatForm = "Windows ME"
Else
PlatForm = "Win 32s"
End If
ElseIf .dwPlatformId = VER_PLATFORM_WIN32_NT Then
If .dwMajorVersion = 4 Then
PlatForm = "Windows NT"
ElseIf .dwMajorVersion = 5 Then
If .dwBuildNumber = "2195" Then
PlatForm = "Windows 2000"
ElseIf .dwBuildNumber = "2600" Then
PlatForm = "Windows XP"
End If
End If
End If
End With
MsgBox "Aktuelles Betriebssystem: " & vbCrLf & _
vbCrLf & PlatForm
End Sub


(Quelle: http://www.vbgamer.de/vb/tipps/tip0003.shtml)

Hoffe das hilft weiter...
Andreas
Anzeige
AW: Betriebssystem auslesen
27.10.2003 10:35:48
Thorsten
Evtl. reicht dir ja auch schon der output von INFO("Sysversion")
- wenn es das in Offcie 97 schon gibt...
Die Hilfe zu INFO gibt dir noch mehr hilfreiche Abfragemöglichkeiten
AW: Betriebssystem auslesen
27.10.2003 10:36:33
Reinhard
Hi Detlef,
=INFO("Sysversion")
Gruß
Reinhard
Vielen Dank
27.10.2003 11:28:23
Detlef D
Vielen Dank...

Werde mal schauen was die beste Möglichkeit für mich ist.

Gruß,
Detlef
Anzeige
;
Anzeige

Infobox / Tutorial

Betriebssystem auslesen in Excel


Schritt-für-Schritt-Anleitung

Um das Betriebssystem zu ermitteln, kannst du VBA verwenden. Hier sind die Schritte, die du befolgen solltest:

  1. Öffne Excel.
  2. Drücke ALT + F11, um den VBA-Editor zu öffnen.
  3. Klicke auf Einfügen > Modul, um ein neues Modul zu erstellen.
  4. Kopiere den folgenden Code in das Modul:
Private Declare Function GetVersionEx Lib "kernel32" Alias _
    "GetVersionExA" (lpVersionInformation As OSVERSIONINFO) As Long

Private Type OSVERSIONINFO
  dwOSVersionInfoSize As Long
  dwMajorVersion As Long
  dwMinorVersion As Long
  dwBuildNumber As Long
  dwPlatformId As Long
  szCSDVersion As String * 128
End Type

Const VER_PLATFORM_WIN32_WINDOWS = 1
Const VER_PLATFORM_WIN32_NT = 2

Private Sub ErmittelnBS()
    Dim PlatForm As String, OSVersion As OSVERSIONINFO
    OSVersion.dwOSVersionInfoSize = Len(OSVersion)
    GetVersionEx OSVersion
    PlatForm = "Unbekanntes Betriebssystem"
    With OSVersion
        If .dwPlatformId = VER_PLATFORM_WIN32_WINDOWS Then
            If .dwMinorVersion = 0 Then
                PlatForm = "Windows 95"
            ElseIf .dwMinorVersion = 10 Then
                PlatForm = "Windows 98"
            ElseIf .dwMinorVersion = 90 Then
                PlatForm = "Windows ME"
            End If
        ElseIf .dwPlatformId = VER_PLATFORM_WIN32_NT Then
            If .dwMajorVersion = 4 Then
                PlatForm = "Windows NT"
            ElseIf .dwMajorVersion = 5 Then
                If .dwBuildNumber = "2600" Then
                    PlatForm = "Windows XP"
                End If
            End If
        End If
    End With
    MsgBox "Aktuelles Betriebssystem: " & vbCrLf & vbCrLf & PlatForm
End Sub
  1. Schließe den VBA-Editor und starte das Makro über Entwicklertools > Makros.

Häufige Fehler und Lösungen

  • Fehler: "Komponente nicht gefunden"
    Lösung: Stelle sicher, dass du die richtigen Bibliotheken in den Verweisen aktiviert hast. Gehe zu Extras > Verweise im VBA-Editor und aktiviere die entsprechenden.

  • Fehler: Das Makro läuft nicht.
    Lösung: Überprüfe, ob die Makros in Excel aktiviert sind. Gehe zu Datei > Optionen > Trust Center > Einstellungen für das Trust Center > Makroeinstellungen.


Alternative Methoden

Eine einfachere Methode, um das Betriebssystem anzuzeigen, ist die Verwendung der Excel-Funktion INFO. Hier ist, wie du es machen kannst:

  1. Gib in eine Zelle folgende Formel ein:
=INFO("Sysversion")

Diese Funktion zeigt die aktuelle Systemversion an und ist besonders nützlich, wenn du keine VBA-Programmierung verwenden möchtest.


Praktische Beispiele

  1. Betriebssystem in einer MessageBox anzeigen:
    Verwende den oben genannten VBA-Code, um das Betriebssystem in einer MessageBox auszugeben.

  2. Betriebssystem in einer Zelle anzeigen:
    Du kannst den Output des VBA-Codes auch in eine bestimmte Zelle schreiben:

Range("A1").Value = "Aktuelles Betriebssystem: " & PlatForm

Tipps für Profis

  • Nutze Fehlerbehandlung im VBA-Code, um unerwartete Probleme abzufangen.
  • Dokumentiere den Code gut, damit du später leichter nachvollziehen kannst, wie das Betriebssystem abgerufen wurde.
  • Teste den Code auf verschiedenen Windows-Versionen, um sicherzustellen, dass er überall funktioniert.

FAQ: Häufige Fragen

1. Wie kann ich das Betriebssystem abfragen, wenn ich kein VBA verwenden möchte?
Du kannst die Funktion INFO("Sysversion") in eine Zelle eingeben, um die Systemversion anzuzeigen.

2. Funktioniert dieser Code in Excel 365?
Ja, der VBA-Code sollte in allen modernen Excel-Versionen funktionieren, einschließlich Excel 365.

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige