Microsoft Excel

Herbers Excel/VBA-Archiv

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

Zahlen vor dem Punkt per Makro

Betrifft: Zahlen vor dem Punkt per Makro von: Andre´
Geschrieben am: 09.10.2014 09:00:37

Hallo alle zusammen,

wie kann ich die Zahlen vor dem Punkt mit einem Makro auslesen

Mit dem nachfolgenden Bsp. funktioniert es ja nur, wenn vor dem Punkt 3 Zahlen stehen.

Sub Test()
Dim Wert
Wert = "123.16"
MsgBox Left(Wert, 3)
End Sub
Bei z.B. "12.58" funktioniert es nicht

Ich hoffe mir kann jemand Helfen.

Vielen Dank im Voraus!

MFG Andre

  

Betrifft: AW: Zahlen vor dem Punkt per Makro von: yummi
Geschrieben am: 09.10.2014 09:10:02

Hallo Andre,

such nach . und setz die Position in dein left Aufruf.

Sub Test()
Dim Wert as double
dim pos as integer

Wert = "123.16"
pos = Instr(1,wert,".",vbTextCompare)
if pos <> 0 then
  MsgBox Left(Wert, pos-1)
End Sub
Gruß
yummi


  

Betrifft: AW: Zahlen vor dem Punkt per Makro von: fcs
Geschrieben am: 09.10.2014 09:17:27

Hallo Andre,

man muss die Position des Punktes bestimmen und kann dann den Text links davon abtrennen.

Sub Test()
  Dim Wert, PosPunkt
  Wert = "123.16"
  PosPunkt = InStr(1, Wert, ".")
  If PosPunkt = 0 Then
    PosPunkt = Len(Wert) + 1
  End If
  MsgBox Left(Wert, PosPunkt - 1)
End Sub

Gruß
Franz


  

Betrifft: AW: Zahlen vor dem Punkt per Makro von: Andre´
Geschrieben am: 09.10.2014 09:25:41

Hallo alle zusammen,

vielen Dank für die Antworten.
so funktioniert es auch:

Sub Test()
Dim Wert
Wert = "123.16"
MsgBox Split(Wert, ".")(0)
End Sub

MFG Andre


  

Betrifft: Als Alternative... von: Case
Geschrieben am: 09.10.2014 09:22:41

Hallo, :-)

... würde sich auch "Split" anbieten:

Option Explicit
Sub Main()
    Dim strWert As String
    strWert = "123555.16789"
    If strWert Like "*.*" Then MsgBox Split(strWert, ".")(0)
End Sub
Servus
Case



 

Beiträge aus den Excel-Beispielen zum Thema "Zahlen vor dem Punkt per Makro"