0

数字と文字を組み合わせた文字列変数がいくつかあります。このような:

A12452

BCD23

ESK56003

vbscript を使用して、これらの文字列から数字ではなく文字を取得したいと考えています。したがって、次の結果が得られるはずです。

BCD

ESK

注:現在VB6を使用しています。

4

1 に答える 1

2

VBA:

Dim i As Long
Dim k As Long

k = Len (MyString)
i = 1
Do Until (i > k) Or (IsNumeric (Mid$ (MyString, i, 1)))
    i = i + 1
Loop

Result = Left$ (MyString, i - 1)

Or編集: VBA ではショート サーキットではないため、このコードにバグがある可能性があることに気付きました(つまりOr、最初の式が true であっても、次の式が評価されます)。おそらくループを書く正しい方法は

Do
    If i > k Then Exit Do
    If IsNumeric (Mid$ (MyString, i, 1)) Then Exit Do
    i = i + 1
Loop
于 2013-05-11T07:34:19.103 に答える