Hot News:

Unser Angebot:

  Foren auf CAD.de
  VBasic / vb.net / vbs / wsh
  Punkt und Komma

Antwort erstellen  Neues Thema erstellen
CAD.de Login | Logout | Profil | Profil bearbeiten | Registrieren | Voreinstellungen | Hilfe | Suchen

Anzeige:

Darstellung des Themas zum Ausdrucken. Bitte dann die Druckfunktion des Browsers verwenden. | Suche nach Beiträgen nächster neuer Beitrag | nächster älterer Beitrag
  
Online-Kurs: Grundlagen des 3D-Druck-Designs für Industrieingenieure , ein Kurs
Autor Thema:  Punkt und Komma (1031 mal gelesen)
BJ
Mitglied
PLM System Administrator


Sehen Sie sich das Profil von BJ an!   Senden Sie eine Private Message an BJ  Schreiben Sie einen Gästebucheintrag für BJ

Beiträge: 488
Registriert: 20.12.2002

erstellt am: 01. Aug. 2003 10:50    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities

Hallo!

Ihr kennt sicher das Problem mit Punkt und Komma mit deutscher und englischer Tastatureinstellung.
Ich muss mein für deutsches Layout geschriebens Programm nun auch für unsere Partner in England zur Verfügung stellen.

Gibts eine Möglichkeit die Einstellung während der Laufzeit von Deutsch auf Englisch zu ändern, damit sich Punkt zu Komma und umgekehrt wandelt?
Oder wie löst ihr das Problem, wenn ich hier z.B. "2,5" aber in England "2.5" eingegeben werden muss?

Danke unf Grüsse,

BJ

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

StefanBerlitz
Ehrenmitglied V.I.P. h.c.
IT Admin (CAx)



Sehen Sie sich das Profil von StefanBerlitz an!   Senden Sie eine Private Message an StefanBerlitz  Schreiben Sie einen Gästebucheintrag für StefanBerlitz

Beiträge: 8756
Registriert: 02.03.2000

SunZu sagt:
Analysiere die Vorteile, die
du aus meinem Ratschlag ziehst.
Dann gliedere deine Kräfte
entsprechend und mache dir
außergewöhnliche Taktiken zunutze.

erstellt am: 01. Aug. 2003 12:04    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für BJ 10 Unities + Antwort hilfreich

Hallo BJ,

wenn du die Konvertierung mit CDbl machst wird der eigenstellte Systemseparator verwendet. Also cdbl("2,5") in Deutschland und cdbl("2.5") in England oder USA sollten dasselbe Ergebnis bringen.

Ciao,
Stefan

------------------
Inoffizielle deutsche SolidWorks Hilfeseite
http://solidworks.cad.de

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

pablo
Mitglied
Techniker


Sehen Sie sich das Profil von pablo an!   Senden Sie eine Private Message an pablo  Schreiben Sie einen Gästebucheintrag für pablo

Beiträge: 453
Registriert: 23.01.2002

erstellt am: 01. Aug. 2003 12:06    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für BJ 10 Unities + Antwort hilfreich

BJ,

ich habe mir eine Funktion gemacht, die mir einen Zahlenwert zurückgibt, wenn die Eingabe gültig ist, egal ob mit Komma oder Punkt.

Option Explicit
Private Declare Function GetSystemDefaultLCID Lib _
        "kernel32" () As Long
Private Declare Function GetLocaleInfo Lib "kernel32" _
        Alias "GetLocaleInfoA" (ByVal Locale As Long, _
        ByVal LCType As Long, ByVal lpLCData As String, _
        ByVal cchData As Long) As Long
Const LOCALE_SDECIMAL = &HE
Private Delimiter As String

Private Function GetEntry(ID&) As String
  Dim LCID&, Result&, buffer$, Length&

    LCID = GetSystemDefaultLCID()
    Length = GetLocaleInfo(LCID, ID, buffer, 0) - 1
    buffer = Space(Length + 1)
    Result = GetLocaleInfo(LCID, ID, buffer, Length)
    GetEntry = Left$(buffer, Length)
End Function

Private Sub GetDelimiter()
  Delimiter = GetEntry(&HE)
End Sub

Public Function GetDoubleWE(ByVal sVal As String, ByRef dVal As Double) As Boolean
Dim d As Double

  On Error GoTo ErrorHandler
 
  sVal = Replace(sVal, ",", Delimiter)
  sVal = Replace(sVal, ".", Delimiter)
  d = CDbl(sVal)
  dVal = d

GetDoubleWE = True
ErrorHandler:
End Function

Private Sub Form_Load()
Dim mDbl As Double
  GetDelimiter
  If GetDoubleWE(InputBox("Zahl eingeben", "Test", "3,14159"), mDbl) Then
    MsgBox mDbl
  Else
    MsgBox "Kein gültiges Zahlenformat"
  End If
  End
End Sub


pablo

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

BJ
Mitglied
PLM System Administrator


Sehen Sie sich das Profil von BJ an!   Senden Sie eine Private Message an BJ  Schreiben Sie einen Gästebucheintrag für BJ

Beiträge: 488
Registriert: 20.12.2002

erstellt am: 05. Aug. 2003 11:04    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities

Schade, ich dachte es geht irgendwie "automatisch". Is´ wohl ein Wunschdenken, dass bei MS so selbstverständliches wie das Layout erkannt wird, und Programme entsprechend reagieren...

Danke trotzdem für eure Antworten, werde versuchen eure Vorschläge umzusetzen.

Gruß BJ

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

Arne Peters
Ehrenmitglied V.I.P. h.c.
CAD Dokumentation / Training / Programmierung / Datenbanken


Sehen Sie sich das Profil von Arne Peters an!   Senden Sie eine Private Message an Arne Peters  Schreiben Sie einen Gästebucheintrag für Arne Peters

Beiträge: 7545
Registriert: 05.2002.24

Solid Edge Seminarunterlagen
Training, Beratung, Programmierung

erstellt am: 17. Aug. 2003 22:27    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für BJ 10 Unities + Antwort hilfreich

Hab da mal ne kleine Funktion gemacht, die ich in Access-Formularen nutze. Damit kann man in einem String ein beliebiges Zeichen durch ein anderes ersetzen. Ich nutze das in Access, um gültige SQL-Strings aus Eingaben in Formularfelder zu erzeugen. Kann zum Beispiel "Beim Verlassen" von Formularfeldern genutzt werden, um erforderliche Zahleneingaben automatisch zu korrigieren.
Aber es gibt auch weitere Anwednungsgebiete dafür. Simpel, aber es funktioniert.

Function f_zeichenersetzen(m_text As String, m_zeichen As String, m_ersatzzeichen As String) As String
    Dim i As Integer
    Dim m_laenge As Integer

    i = 1
    m_laenge = Len(Trim(m_zeichen))

While InStr(i, m_text, m_zeichen) <> 0
    i = InStr(i, m_text, Trim(m_zeichen))
    m_text = Left$(m_text, i - 1) & m_ersatzzeichen & Mid$(m_text, i + m_laenge)
Wend
    f_zeichenersetzen = m_text
End Function

------------------
APeters@BSS-Online.de

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

RoSiNiNo
Mitglied
Konstrukteur


Sehen Sie sich das Profil von RoSiNiNo an!   Senden Sie eine Private Message an RoSiNiNo  Schreiben Sie einen Gästebucheintrag für RoSiNiNo

Beiträge: 1126
Registriert: 09.10.2002

erstellt am: 18. Aug. 2003 07:42    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für BJ 10 Unities + Antwort hilfreich

Hast du schon einmal die VB-Funktion REPLACE probiert?
Wenn nicht, schau sie dir einmal an.

------------------
Roland

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

Arne Peters
Ehrenmitglied V.I.P. h.c.
CAD Dokumentation / Training / Programmierung / Datenbanken


Sehen Sie sich das Profil von Arne Peters an!   Senden Sie eine Private Message an Arne Peters  Schreiben Sie einen Gästebucheintrag für Arne Peters

Beiträge: 7545
Registriert: 05.2002.24

Solid Edge Seminarunterlagen
Training, Beratung, Programmierung

erstellt am: 18. Aug. 2003 08:40    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für BJ 10 Unities + Antwort hilfreich

"Replace" Ja fein, danke. Möglich daß es die zu meinen Anfängen (Access 2.0) noch nicht gab, oder ich hab sie übersehen.

------------------
APeters@BSS-Online.de

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

RoSiNiNo
Mitglied
Konstrukteur


Sehen Sie sich das Profil von RoSiNiNo an!   Senden Sie eine Private Message an RoSiNiNo  Schreiben Sie einen Gästebucheintrag für RoSiNiNo

Beiträge: 1126
Registriert: 09.10.2002

erstellt am: 18. Aug. 2003 08:42    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für BJ 10 Unities + Antwort hilfreich

Ich hab's auch erst vor kurzem entdeckt

------------------
Roland

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

cad-rg
Mitglied



Sehen Sie sich das Profil von cad-rg an!   Senden Sie eine Private Message an cad-rg  Schreiben Sie einen Gästebucheintrag für cad-rg

Beiträge: 15
Registriert: 10.09.2003

erstellt am: 10. Sep. 2003 12:24    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für BJ 10 Unities + Antwort hilfreich

so mache ich es:

Sub WertEingabe_LostFocus ()
'Eingabe eines Wertes'

z = WertEingabe.Text

If IsNumeric(z) = True Then
  wert = z
Else wert = 0
End If

WertEingabe.Text = wert

End Sub

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

Anzeige.:

Anzeige: (Infos zum Werbeplatz >>)

Darstellung des Themas zum Ausdrucken. Bitte dann die Druckfunktion des Browsers verwenden. | Suche nach Beiträgen

nächster neuerer Beitrag | nächster älterer Beitrag
Antwort erstellen


Diesen Beitrag mit Lesezeichen versehen ... | Nach anderen Beiträgen suchen | CAD.de-Newsletter

Administrative Optionen: Beitrag schliessen | Archivieren/Bewegen | Beitrag melden!

Fragen und Anregungen: Kritik-Forum | Neues aus der Community: Community-Forum

(c)2025 CAD.de | Impressum | Datenschutz