• ベストアンサー

VB初心者です

VB初心者なので教えて下さい。 a As String a = "平成17年" の時、中の数字の"17"の部分だけを抽出するには、 どのように記述すれば宜しいでしょうか? 中の数字は1桁でも2桁でも、とにかく数字だけを抽出したいのです。VBのVer6.0を使っています。

質問者が選んだベストアンサー

  • ベストアンサー
  • merlionXX
  • ベストアンサー率48% (1930/4007)
回答No.2

No1です。 失礼しました。 Sub test() Dim a As String Dim x, n, i a = "平成17年" n = Len(a) For i = 1 To n If IsNumeric(Mid(a, i, 1)) Then x = x & Mid(a, i, 1) Next MsgBox x End Sub に変えてください。

noname#15844
質問者

お礼

回答有難うございました^^

その他の回答 (2)

  • BLUEPIXY
  • ベストアンサー率50% (3003/5914)
回答No.3

Dim objRegExp, objMatches, objMatch, x Dim a As String a = "平成17年" Set objRegExp = CreateObject("VBScript.RegExp") objRegExp.Pattern = "(\d+)" 'objRegExp.Global = True Set objMatches = objRegExp.Execute(a) MsgBox objMatches(0) '数字の部分が1つの場合

noname#15844
質問者

お礼

回答、有難うございました~。

  • merlionXX
  • ベストアンサー率48% (1930/4007)
回答No.1

VBはよく知りませんが、VBAならこれで出来ます。 Sub test() Dim a As String Dim x As Integer a = "平成17年" n = Len(a) For i = 1 To n If IsNumeric(Mid(a, i, 1)) Then x = x & Mid(a, i, 1) Next MsgBox x End Sub

関連するQ&A