VBAで文字列の右側や左側から指定文字数削除する

文字列の右側や左側から指定文字数を削除するには

文字列の右側や左側から指定文字数を削除するには文字列操作の関数の組み合わせで実現します。

具体的には、右側の削除はLeft関数とLen関数、左側の削除はRight関数とLen関数を組み合わせます。

おさらいですが、文字列の一部を切り出す関数のLeft、Mid、Right関数は以下のような動作をします。

それぞれ左から、指定位置から、右から、指定文字数を切り出します。

実行結果は以下になります。
789
345
123

1. 文字列の右側から指定文字数削除する関数

以下の関数は文字列の右側から指定した文字数だけ削除して返します。

引数には文字列と削除文字数を指定します。関数の戻り値として削除後の文字列を返します。

引数のチェック処理として、文字列であるかのチェックと削除文字数のチェックを入れています。

削除文字数のチェックを入れている理由は、Left関数の引数に文字列長より大きい値が設定されると実行時エラーが発生するためです。

これらの不正が発生した場合は既定の空文字列を返すようにしています。

2. 文字列の左側から指定文字数削除する関数

上の関数の左側バージョンです。

違いは20行目のLeft関数がRight関数になっている個所だけです。使い方も同じです。

使い方

上記の2つ関数の使い方はどちらも同じで、文字列と削除文字数を引数で渡します。削除後の文字列が戻り値として返ってきます。

実行結果

関連記事

サブコンテンツ

このページの先頭へ