VBAサンプル集
指定文字、指定数式でジャンプ機能(Union)

ExcelマクロVBAの実用サンプル、エクセルVBA集と解説
公開日:2013年5月以前 最終更新日:2020-04-04

指定文字、指定数式でジャンプ機能(Union)


ジャンプ機能がありますが、ジャンプのセル選択では特定の文字や数式は指定できません。
ある文字を含むセルや、ある関数を含むセルを一括で選択状態にするのは、ジャプ機能では出来ません。


そこで、マクロVBAでこれらができるようにして見ました。
何に使うかは・・・ご自由に!

ジャンプのセル選択以外でセルを選択するには

ジャンプのセル選択では特定の文字や数式は指定できません。

マクロ VBA サンプル画像

そこで、「検索」を使います。

マクロ VBA サンプル画像

「検索する文字列」を指定して「すべて検索」

マクロ VBA サンプル画像

検索結果の一覧の一番上が選択された状態になります。
もし、選択状態になっていない場合は、どの行でも良いので選択します。

Ctrl + A

VBA マクロ 特定文字へのジャンプ

指定文字、指定数式でジャンプ機能のVBA

Sub ジャンプ機能()
  Dim myRange As Range
  Dim selRange As Range
  Dim strFind As String
  
  strFind = InputBox("対象ブック:" & ActiveWorkbook.Name & vbLf & _
            "対象シート:" & ActiveWorkbook.ActiveSheet.Name & vbLf & vbLf & _
            "計算式の場合は、先頭に=を付けて下さい。", _
            "指定文字列検索&選択")
  If strFind = "" Then
    Exit Sub
  End If
  
  For Each myRange In ActiveSheet.UsedRange
    If Left(strFind, 1) = "=" Then
      If InStr(UCase(myRange.Formula), UCase(Mid(strFind, 2))) > 0 Then
        If selRange Is Nothing Then
          Set selRange = myRange
        Else
          Set selRange = Union(selRange, myRange)
        End If
      End If
    Else
      If InStr(UCase(myRange), UCase(strFind)) > 0 Then
        If selRange Is Nothing Then
          Set selRange = myRange
        Else
          Set selRange = Union(selRange, myRange)
        End If
      End If
    End If
  Next
  If selRange Is Nothing Then
    MsgBox ("該当セルは存在しませんでした。")
  Else
    selRange.Select
  End If
End Sub

指定文字、指定数式でジャンプ機能の解説

InputBox関数

InputBox関数は、文字列の入力を求める関数です。
InputBox関数は、ダイアログボックスにメッセージとテキストボックスを表示し、文字列が入力されるか、またはボタンがクリックされると、テキストボックスの内容を返します。InputBox関数 構文 InputBox(prompt[,title][,default][,xpos][,ypos] [,helpfile,
現在のブック、シートを表示して、入力を求めるようにしました。
対象は現在のブック、シートになるので、
このマクロのあるブック以外でも処理可能です。
計算式を検索する場合は、先頭に「=」をつけて、「=IF」のように指定します。

ActiveSheet.UsedRange

UsedRangeは、現在のシートで使用されているセル範囲になります。
・最終行取得の基本:手動ではCtrl + ↑、VBAではCells(1, 1).End(xlDown) ・最終列の取得 ・特殊な表の場合 ・CurrentRegion ・SpecialCells(xlCellTypeLastCell) ・UsedRange ・Findメソッド ・サイト内関連ページ
For Eachで、この中から、1つづつセルを取り出しています。

InStr関数

InStr(文字列, 検索文字)
InStr関数は、検索文字で文字列を検索しその位置を返します。
・InStr関数 ・InStrB関数 ・InStr関数の使用例 ・InStr関数の応用例1 ・InStr関数の応用例2 ・InStr関数の応用例3 ・InStr関数の練習問題 ・ ・
存在しない場合は、0が返ります。

UCase関数

UCase関数は、英文字を大文字に変換します。
・UCase関数 ・UCase$ ・UCase関数の使用例
従って、「A」と「a」は同じとみなします。
大文字小文字を区別する場合は、このUCaseを削除すれば良いです。

Unionメソッド

Unionメソッドは、2つのセル範囲を1つのセル範囲に結合します。
・Unionメソッド ・Areasプロパティ ・Unionメソッドで連結した結果のRangeオブジェクトの状態について ・Unionメソッドの使用例 ・Unionメソッドの実践例

指定文字、指定数式でジャンプ機能の最後に

どのような場面で、どのように使うか・・・
特に考えずに書いてみました。
そんなに多くの利用場面はないと思いますが、
ジャンプを使って、あれっ、出来ない、と思った事がある人や、
検索機能では操作が面倒だと思った人等々、
そのうち、使用する機会が、、、あるかもしれない。



同じテーマ「マクロVBAサンプル集」の記事

ユーザー定義関数でハイパーリンクのURLを取得(Hyperlink)
カラーのコード取得(256RGB⇔16進変換)
時刻になったら音を鳴らして知らせる(OnTime)
指定文字、指定数式でジャンプ機能(Union)
「値の貼り付け」をショートカットに登録(OnKey)
「セルの結合」をショートカットに登録(OnKey)
半角カナのみ全角カナに変換する
計算式の元となる数値定数を消去する(Precedents)
Beep音で音楽(Beep,Sleep)
日付の検索(配列の使用)
ストップウォッチ(1/100秒)(Timer)


新着記事NEW ・・・新着記事一覧を見る

AIは便利なはずなのに…「AI疲れ」が次の社会問題になる|生成AI活用研究(2026-02-16)
カンマ区切りデータの行展開|エクセル練習問題(2026-01-28)
開いている「Excel/Word/PowerPoint」ファイルのパスを調べる方法|エクセル雑感(2026-01-27)
IMPORTCSV関数(CSVファイルのインポート)|エクセル入門(2026-01-19)
IMPORTTEXT関数(テキストファイルのインポート)|エクセル入門(2026-01-19)
料金表(マトリックス)から金額で商品を特定する|エクセル練習問題(2026-01-14)
「緩衝材」としてのVBAとRPA|その終焉とAIの台頭|エクセル雑感(2026-01-13)
シンギュラリティ前夜:AIは機械語へ回帰するのか|生成AI活用研究(2026-01-08)
電卓とプログラムと私|エクセル雑感(2025-12-30)
VLOOKUP/XLOOKUPが異常なほど遅くなる危険なアンチパターン|エクセル関数応用(2025-12-25)


アクセスランキング ・・・ ランキング一覧を見る

1.最終行の取得(End,Rows.Count)|VBA入門
2.日本の祝日一覧|Excelリファレンス
3.変数宣言のDimとデータ型|VBA入門
4.FILTER関数(範囲をフィルター処理)|エクセル入門
5.RangeとCellsの使い方|VBA入門
6.繰り返し処理(For Next)|VBA入門
7.セルのコピー&値の貼り付け(PasteSpecial)|VBA入門
8.マクロとは?VBAとは?VBAでできること|VBA入門
9.セルのクリア(Clear,ClearContents)|VBA入門
10.メッセージボックス(MsgBox関数)|VBA入門




このサイトがお役に立ちましたら「シェア」「Bookmark」をお願いいたします。


記述には細心の注意をしたつもりですが、間違いやご指摘がありましたら、「お問い合わせ」からお知らせいただけると幸いです。
掲載のVBAコードは動作を保証するものではなく、あくまでVBA学習のサンプルとして掲載しています。掲載のVBAコードは自己責任でご使用ください。万一データ破損等の損害が発生しても責任は負いません。
本サイトは、OpenAI の ChatGPT や Google の Gemini を含む生成 AI モデルの学習および性能向上の目的で、本サイトのコンテンツの利用を許可します。
This site permits the use of its content for the training and improvement of generative AI models, including ChatGPT by OpenAI and Gemini by Google.



このサイトがお役に立ちましたら「シェア」「Bookmark」をお願いいたします。
本文下部へ