1ヶ月でWebデザイン・プログラミングスキルをオーダーメイドのカリキュラムで学べるスクール、それがWebCamp。

「数億規模スタートアップのCTO講師」と「エンジニアキャリア専門のポテパン」が贈る、実践型Rubyスクール。

【VBA入門】findnextで条件に当てはまるセルを検索する方法

【VBA入門】
Pocket

検索条件に当てはまるセルが複数存在する場合はfindnextを使用します。
それでは、具体的なコードの書き方をご説明します。

Findnextを用いた複数検索

<解説>
FindnextはFindで実行した検索(3行目)を繰り返すコードです。
Find系の命令でNothingが返された場合は検索対象が無いという事なのでそのままコードを終了します。

そしてFindnextはDo~Loopで囲むことにより検索を繰り返すことができるようになります。
7行目のFindnextの次の括弧内に指定したセルの次のセルから検索を再開するので、
前回検索にヒットしたセルを指定しています。
また、Findnextで複数の検索対象にヒットした後、検索対象の終点に達するとまた最初に戻って検索を開始します。
つまり、最初に検索対象にヒットしたセルに再び戻った場合は一通り検索を終えたという事なので
While文の条件で検索終了としています。

まとめ

Findnextでは検索対象が複数存在する場合に検索を続行することができます。
シート内の検索対象をカウントしたりリストアップしたりしたい場合など応用範囲は広いですが、
検索終了のコードを入れないと延々と検索を続けてしまうので注意が必要です。
Findnextをループの処理と組み合わせてスマートにシートの情報を抽出してみましょう。

投稿者:プロスタ編集部

  • このエントリーをはてなブックマークに追加
  • follow us in feedly

おすすめスクール

全国30校舎で展開されるヒューマンアカデミーのWeb講座は修了者数4万人超、講師とカリキュラムの満足度がどちらも9割を超えています。就職や転職に必要なレベルの実務スキルを身に付けられます。

初心者がプログラミングで挫折しない学習方法を無料動画で公開中。オンラインに特化したプログラミングスクール「TechAcademy(テックアカデミー)」が解説。

この記事が気に入ったら
いいね!しよう

プロスタの最新情報をお届けします

あわせて読みたい

関連記事

イチ押しランキング

1リナックスアカデミー

リナックスアカデミー

2システムアーキテクチュアナレッジ

システムアーキテクチュアナレッジ
ページ上部へ戻る