見出し画像

【Day40】文系オタクのエンジニア道~関数②文字列Part2~

こんにちは
安田です

引き続き関数をまとめました
Part3で完結させます

今回はPart2です


LTrim関数、RTrim関数、Trim関数

LTrim関数は引数に指定した文字列の左端にあるスペースを取り除きます
RTrim関数は引数に指定した文字列の右端にあるスペースを取り除きます
Trim関数は引数に指定した文字列の両端にあるスペースを取り除きます

Sub test1()
    Dim i As Long
    
    For i = 1 To 4
        Cells(i, 2) = LTrim(Cells(i, 1))
    Next i
End Sub


左側にある余白が消えました

Replace関数

引数に指定した文字列の中で
引数「検索文字列」で指定した文字列を
引数「置換文字列」に置き換えます

文字列の中から不要な部分を除去するときに使われる

【書式】Replace(文字列, 検索文字列, 置換文字列)

Sub test2()
    Dim i As Long
    
    For i = 1 To 3
        Cells(i, 2) = Replace(Cells(i, 1), "-A", "")
    Next i 

End Sub
-Aが取り除かれて、数字だけ表示されました

InStr関数

引数に指定した文字列の中で
引数「検索文字列」が存在する位置を数値で返す

InStr関数は単独であまり使用せず、InStr関数で調べた位置をMid関数などの引数に指定します

また検索文字列が存在しないとInStr関数は「0」を返す

Sub test3()
    Dim i As Long
    
    For i = 1 To 4
       Cells(i, 2) = Mid(Cells(i, 1), InStr(Cells(i, 1), "-") + 1)
    Next i
    
End Sub

Mid関数は元の文字列の、開始位置から指定した文字数分の文字列を抜き出す関数です

上記は元の文字列に「Cells(i, 1)」を指定しています
開始位置は元の文字列内に存在する「-」の位置です

「-」の位置をInStr関数で調べています

抜き出したいのは「-」の次の文字以降です

なのでInStr関数で判明した「-」の位置に1をプラスしています

Mid関数は引数「文字数」を省略すると
元の文字列の後ろ全部を抜き出してくれます


まとめ

置換はよくエクセルで使う機能でしたが
VBAでの関数は馴染がないものが多かったです

Mid関数を使ったり
複合的なものもマスターできるようにしていきます

参考文献

VBAマスターに俺はなる

最後まで読んでいただき
ありがとうございます
安田

マガジンにまとめてありますので
よかったらそちらも御覧ください


この記事が気に入ったらサポートをしてみませんか?