Microsoft Excel

Herbers Excel/VBA-Archiv

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

$ / € Problem

Betrifft: $ / € Problem von: Marcel
Geschrieben am: 27.08.2004 10:14:47

guten morgen,

ich habe ein excelsheet mit einer makroeingabeautomatik. das ding wird später in deutschland und usa zum einsatz kommen. jetzt habe ich das problem das punkt und komma nicht gleich behandelt werden. der deutsche schreibt meist mit komma 1,21 - der ammi neigt zum punkt 1.21 - dies hat folgende auswirkung:

z.b. im feld dollarkurs:
eingabe 1,21 ausgabe 1,21
eingabe 1.21 ausgabe 121,00

gibt es eine einstellung oder einen vba code, damit komma und punkt gleich behandelt werden? also das eingaben 1,21 & 1.21 beide die ausgabe 1,21 zur folge haben?

gruß
danke
marcel

  


Betrifft: Möglicherweise: Ländereinstellung auslesen von: Boris
Geschrieben am: 27.08.2004 11:28:54

Hi Marcel,

ich begebe mich jetzt mal auf dünnes Eis:
Frage die Ländereinstellung des Systems ab und programmiere entsprechend 2 Routinen.

Die Ländereinstellung erhälst du mit der API

Declare
Function GetSystemDefaultLCID Lib _
        "kernel32" () As Long

Sub test()
MsgBox GetSystemDefaultLCID
End Sub


wobei das Wort Declare direkt vor
Function gehört - das wird hier falsch dargestellt.

Ergibt für DEUTSCH: 1031
Für Englisch (USA) 1033

Vielleicht hilft´s.

Grüße Boris



  


Betrifft: Nachtrag: Noch ne API von: Boris
Geschrieben am: 27.08.2004 12:04:29

Hi Marcel,

hab grad noch die passende Api gefunden, um die Ländereinstellung als String zu erhalten:

Private Declare Function VerLanguageName Lib "kernel32" Alias "VerLanguageNameA" (ByVal wLang As Long, ByVal szLang As String, ByVal nSize As Long) As Long
Declare Function GetSystemDefaultLCID Lib _
"kernel32" () As Long
Private Sub Form_Paint()
    'KPD-Team 2000
'URL: <a href="http://www.allapi.net/">http://www.allapi.net/</a>
    'E-Mail: KPDTeam@allapi.net
    Dim Buffer As String
    Buffer = String(255, 0)
    VerLanguageName GetSystemDefaultLCID, Buffer, Len(Buffer)
    Buffer = Left$(Buffer, InStr(1, Buffer, Chr$(0)) - 1)
    MsgBox Buffer
End Sub


Grüße Boris


  


Betrifft: AW: Nachtrag: Noch ne API von: Marcel
Geschrieben am: 27.08.2004 12:20:22

hallo boris,

hab mal hin und her gebastelt, aber mit der lösung komm ich nicht klar. griege es nicht hin :(

gruß
strassi


  


Betrifft: AW: Nachtrag: Noch ne API von: Boris
Geschrieben am: 27.08.2004 12:22:57

Hi Marcel,

hab mal hin und her gebastelt, aber mit der lösung komm ich nicht klar. griege es nicht hin :(

Das ist eine der Antworten, die ich am meisten liebe...:-((

Was bekommst du nicht hin? Welche Fehlermeldung erhälst du? Wie sieht dein gesamter Code aus?

Lad doch mal deine Beispielmappe hoch, in der du deinen Versuch eingebaut hast.

Grüße Boris


 

Beiträge aus den Excel-Beispielen zum Thema "$ / € Problem"