#505 文字列の一部を指定回数だけ置換するには? VBA

「Replace」関数を使うと、引数に指定された文字列の中から、ある文字列だけを別の文字列に置換することができます。
そのとき、この関数の5つめの引数を指定することによって、すべての対象文字列ではなく、先頭からの指定回数だけ置換させることができます。

プログラム例:

Dim strA As String
Dim strB As String

'置換前の文字列
strA = "AAAAAAAAAAAAA"

'すべてのAをBに置換
strB = Replace(strA, "A", "B")
Debug.Print strB

'先頭のA5つだけをBに置換
strB = Replace(strA, "A", "B", , 5)
Debug.Print strB


上記のコードでは、まず最初のReplace関数では5つめの引数を指定していませんので、すべての”A”が”B”に置換されます。

一方、ふたつ目のReplace関数では、5つめの引数に”5”を指定しているので、先頭のA5つだけが置換され、それより後ろの”A”は置換されません。

実行結果:
実行結果
| Index | Prev | Next |

この情報は参考になりましたか?、問題は解決しましたか?、もしまだなら......
T'sWareのワンポイトテクニカルアドバイスをご利用ください。3000円/件〜でご支援します。
スタンドアロンからSQL Server対応まで、オーダーメイドのシステムを短納期・安価でお届けします
 

Copyright © T'sWare All rights reserved