String関数の使い方は文字を指定数だけ並べることが出来る

VBAStringeyecatch

エクセルVBA 文字列操作のString関数の使い方についてです。
「文字を指定した数だけ並べることが出来る」という機能の関数です。
この関数を使えば簡潔なコード記述で実行することが出来ます。

こんにちは、じゅんぱ店長(@junpa33)です。

今回は、指定した文字を指定した数だけ並べるString関数についてです。

どういった時に使えるかというと、たとえば、いろんな利用法があると思いますが、

獲得点数をグループ全体の中で、比較参照しやすくする時に使うとか・・・。

ちょっと知ってると便利な関数です。

String関数はどういう関数、どう使う?

vbastringp003

よく何かを採点するときに「★3っつ」とか「トリプルA」とか使う時があります。

このString関数はそのような「同じ文字を並べる」時に最適な関数です。

つまり「文字を指定した数だけ並べることが出来る」関数なのです。

String関数の構文

String関数の構文

  • String(「反復数」,「反復文字」)

「反復数」は必ず指定しなければなりません。長整数型
正の整数値で指定します。

「反復文字」は必ず指定しなければなりません。バリアント型
文字、文字列(先頭文字優先)、文字コード(ASCII 、シフト JIS)で指定します。

String関数の使用例

vbastringp004

使用例の設定条件

例題として、10個の製品の評価点を一覧表にしています。

評価欄にA,B,C,D,Eランク分けで一目で評価結果を認識しやすくします。

同ランク内ではシングル~トリプルまでの3段階設定とします。

vbastring001a

String関数のサンプルコード

設定した変数
  • データ行数のループ変数・・・i
VBA
Option Explicit

Sub String関数Test()
    Dim i As Long
'行数分のループ処理
        For i = 2 To 11
'Select Caseで条件分岐を行う
            Select Case Range("B" & i)
                Case 90 To 94
'「A」を1回繰り返し
                    Range("C" & i) = String(1, "A")
                Case 95 To 97
'「A」を2回繰り返し
                    Range("C" & i) = String(2, "A")
                Case Is > 97
'「A」を3回繰り返し
                    Range("C" & i) = String(3, "A")
                Case 80 To 84
                    Range("C" & i) = String(1, "B")
                Case 85 To 87
                    Range("C" & i) = String(2, "B")
                Case Is > 87
                    Range("C" & i) = String(3, "B")
                Case 70 To 74
                    Range("C" & i) = String(1, "C")
                Case 75 To 77
                    Range("C" & i) = String(2, "C")
                Case Is > 77
                    Range("C" & i) = String(3, "C")
                Case 60 To 64
                    Range("C" & i) = String(1, "D")
                Case 65 To 67
                    Range("C" & i) = String(2, "D")
                Case Is > 67
                    Range("C" & i) = String(3, "D")
                Case Is < 60
                    Range("C" & i) = String(1, "E")
            End Select
        Next i
End Sub

【実行結果】

評価欄に記号が表示されました。

得点ごとに評価記号を細かく区別表示することが出来ました。

vbastring002a

参考記事

  • Select Caseステートメントについてはこの記事が参考になります。
vbaselectcaseeyecatch Select Case 条件分岐の使い方。ステートメントの基本

String関数の使い方のまとめ

vbastringp005

String関数は、扱いもそんなに難しくはないと思います。

また頻度的にも頻繁に使う関数ではありませんが、知っておくと便利な関数です。

今回の例題は得点による条件分岐が多くありましたので、

Select Case ステートメントを利用しました。

コードの行数は増えましたが、基本的に簡単なコードで作成することが出来ました。

このように簡単に使えますので、String関数を、また何かのケースで使ってみてください。

エクセルVBAを独習するのに参考書は欠かせません。 参考書選びは自分に合った「相棒」にできるものを選んでいきたいです。

vbastudyeyecatch2 エクセルVBAの独習でおすすめ参考書を7冊選ぶ。良書との出会いは大切です

今回の記事はここまでです。   最後までご覧いただき有難うございました。

エクセルVBA最速理解で必要な知識を集めよう!

エクセルVBA業務ツールで日常の業務改善を行いましょう。

VBAコードの記述記事においては、その記述には細心の注意をしたつもりですが、掲載のVBAコードは動作を保証するものではりません。 あくまでVBAの情報の一例として掲載しています。 掲載のVBAコードのご使用は、自己責任でご判断ください。 万一データ破損等の損害が発生しても当方では責任は負いません。

アンケートでポイ活しよう!!

アンケートに答えれば答えるほど ”使える” ポイントがたまります。

NTTコム サーチ

af_banner01

Dstyle web

dstyleweb_logo
dstyle_320x50-min