久々にプログラミングをする機会があって、タイトルの通り範囲の中で一番最初に出てくる文字を取得する関数が欲しかったので作成しました。
やりたいこと
こんな感じで選択したときに、上から順に判定していって、最初に出てくる文字を取得したいというものです。
範囲の中で一番最初に出てくる文字を取得するVBAコード
利用したいときは標準モジュールを追加して以下のコードを追加してね。
Function firstChr(rangeCells) Dim tempArray As Variant tempArray = rangeCells For i = 1 To UBound(tempArray) If tempArray(i, 1) <> "" Then firstChr = tempArray(i, 1) Exit Function End If Next End Function
コードの解説
重要なのは4行目からのFor文ですが、範囲を引数として取得し、ブランクでなければその文字を取得して戻り値として返すという関数です。
さいごに
この関数をベースに、その文字が何番目に表示されるのか~とか、そういった修正もできると思います。
ぜひ使ってみてね~!
[…] 前回更新したユーザ定義関数は、範囲の中で一番最初に出てくる文字を取得するユーザ定義関数でしたが、こちらは、その文字列と同じ位置の別範囲の文字列を取得するという関数です。 […]