• ベストアンサー

vbs 数字の間に記号を挟む

以下の文字列があるとします。 ABCDEFG12345 これを以下に変換したいです。 ABCDEFG1.2.3.4.5 プログラムのご教示頂きたいです。

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

  • ベストアンサー
  • watabe007
  • ベストアンサー率62% (476/760)
回答No.1

参考に Option Explicit Dim strText, strNText, i, n1, n2 strText = "ABCDEFG12345" For i = 1 to Len(strText) n1 = Mid(strText, i, 1) n2 = Mid(strText, i + 1, 1) If IsNumeric(n1) and IsNumeric(n2) Then strNText = strNText & n1 & "." Else strNText = strNText & n1 End If Next MsgBox strNText

tyarutiru
質問者

お礼

ありがとうございました。 うまくいきました。

その他の回答 (1)

  • imogasi
  • ベストアンサー率27% (4737/17069)
回答No.2

何が聞きたいのか? エクセルVBAならできるが、VBSではうまく行かなかったのか?やっていないのか? ーー Googleで調べれば、 こういうVBSの関数に関する記事がある。 https://www.kanaya440.com/contents/script/vbs/function/index_text.html Mid関数やIsnumeric関数が使える。 ーー または、ロジックが分からないのか。 文字列を1文字(Midを使って)ずつ見て行って、数字の始まり位置を知(Isnumericで判定)れば仕舞。ピリオドは「&」で(後)結合する。最後だけ ピリオドを付け加えない。 http://www.dicre.com/ols/vbs/body33.html 文字列の連結  前提は、数字の「かたまり」が、文字列の中で、2か所以上ないものとしてよいのかどうか。何でも、プログラムを組むということは、最後のような、当たり前としている風な、条件を注意し、意識することだ。

関連するQ&A