Microsoft Excel

Herbers Excel/VBA-Archiv

Informationen und Beispiele zum Thema MsgBox
BildScreenshot zu MsgBox MsgBox-Seite mit Beispielarbeitsmappe aufrufen

Welcher Sprache in der konkreten Umgebung ?


Betrifft: Welcher Sprache in der konkreten Umgebung ? von: Barbaraa
Geschrieben am: 10.04.2017 11:57:14

Hallo

kann ein Makro feststellen, ob es auf einem deutschen, englischen oder anderssprachigen Windows/Excel läuft?

In meinem Makro sind bestimmte sendkeys-Tastenfolgen von der Sprache abhängig.

Habe es probiert mit Environ$(i) mit i = 1 bis 255,
aber nichts Sprachspezifisches gefunden.

Sub EnumSEVars()
        Dim strVar As String
        Dim i As Long
        For i = 1 To 255
            strVar = Environ$(i)
            If LenB(strVar) = 0& Then Exit For
            Debug.Print strVar
        Next
End Sub
Wäre für Tipps dankbar.

LG,
Barbara

  

Betrifft: AW: Welcher Sprache in der konkreten Umgebung ? von: Daniel
Geschrieben am: 10.04.2017 12:22:26

Hi

ich hab da folgendes gefunden, läuft aber laut Angabe erst ab Version 2013

Msgbox Application.LanguageSettings.LanguageID(msoLanguageIDExeMode)

(nähere Infos bitte selbstständig in der Hilfe nachlesen)

wenn das nicht funktioniert, kannst du einzelne Informationen wie Dezimal- und Tausendertrennzeichen direkt abfragen:
Application.ThousandsSeparator
Application.DecimalSeparator
Ein Workaround um die Sprachversion einzugrenzen wäre, eine bestimmte Formel in internationaler Schreibweise in eine Zelle zu schreiben (das geht immer unabhängig von der Länderversioin) und dann die lokale Schreibweise abzufragen:
Dim Sprache as String
Range("A1").Formula = "=RAND()"
Select Case Range("A1").FormulaLocal
    Case "=ZUFALLSZAHL()"
        Sprache = "deutsch"
    Case ="RAND()"
        Sprache = "englisch"
    Case else
        Sprache = "unbekannt"
End Select
Msgbox "Sprache"
schwierig wird's wahrscheinliche, wenn ein englisches Excel auf einem deutschen Rechner installiert ist

über das LanguageSettings-Objekt ließe sich das Abfragen:
https://msdn.microsoft.com/de-de/library/office/ff863438.aspx


Gruß Daniel


  

Betrifft: AW: Welcher Sprache in der konkreten Umgebung ? von: Nepumuk
Geschrieben am: 10.04.2017 13:33:32

Hallo,

das geht so:

Public Sub Test()
    
    'Die landesspezifische/regionale Version von Microsoft Excel:
    MsgBox Application.International(xlCountryCode)
    
    
    'Die aktuellen Regions- und Sprachoptionen in der Windows-Systemsteuerung:
    MsgBox Application.International(xlCountrySetting)
    
End Sub

Die zugehörigen Länderkürzel:

English1
Russian7
Greek30
Dutch31
French33
Spanish34
Hungarian36
Italian39
Czech42
Danish45
Swedish46
Norwegian47
Polish48
German49
Portuguese (Brazil)55
Thai66
Japanese81
Korean82
Vietnamese84
Simplified Chinese86
Turkish90
Indian91
Urdu92
Portuguese351
Finnish358
Traditional Chinese886
Arabic966
Hebrew972
Farsi982

Gruß
Nepumuk


  

Betrifft: AW: Welcher Sprache in der konkreten Umgebung ? von: Barbaraa
Geschrieben am: 10.04.2017 21:17:19

@ Daniel
Gute Idee, mit dem Kommazeichen. Funktioniert. Vielen Dank
PS: Die Antworten zu meiner anderen Frage muss ich mir noch ansehen. Das braucht noch etwas Zeit.

@ Nepumuk
Hatte selbst kein Glück bei der Suche. Ist bereits umgesetzt. Auch Dir ein großes Danke. Und auch für die Tabelle.

LG, Barbara


Beiträge aus den Excel-Beispielen zum Thema "Welcher Sprache in der konkreten Umgebung ?"