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 ・・・新着記事一覧を見る

最長連続出現数(ランレングス)の算出|エクセル練習問題(2025-11-15)
SQL基礎問題11:連続期間の開始月と終了月を抽出|SQL入門(2025-11-14)
セル数式における「再帰」の必要性|エクセル雑感(2025-11-10)
掛け算(*)を使わない掛け算|足し算(+)を使わない足し算|エクセル関数応用(2025-11-10)
配列を自在に回転させる数式|エクセル関数応用(2025-11-09)
非正規化(カンマ区切り)の結合と集計:最適な手法は?|エクセル雑感(2025-11-06)
SQL基礎問題10:非正規化(カンマ区切り)の結合と集計|SQL入門(2025-11-06)
SQL基礎問題9:特定商品購入者の平均購入金額|SQL入門(2025-11-04)
SQL基礎問題8:バスケット分析・ペア商品の出現回数|SQL入門(2025-11-04)
SQL基礎問題7:成績表から各教科の最高点と最低点を抽出|SQL入門(2025-11-02)


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

1.生成AIパスポート試験 練習問題(四肢択一式)|生成AI活用研究
2.最終行の取得(End,Rows.Count)|VBA入門
3.変数宣言のDimとデータ型|VBA入門
4.セルのコピー&値の貼り付け(PasteSpecial)|VBA入門
5.繰り返し処理(For Next)|VBA入門
6.RangeとCellsの使い方|VBA入門
7.FILTER関数(範囲をフィルター処理)|エクセル入門
8.日本の祝日一覧|Excelリファレンス
9.マクロとは?VBAとは?VBAでできること|VBA入門
10.セルのクリア(Clear,ClearContents)|VBA入門




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


記述には細心の注意をしたつもりですが、間違いやご指摘がありましたら、「お問い合わせ」からお知らせいただけると幸いです。
掲載のVBAコードは動作を保証するものではなく、あくまでVBA学習のサンプルとして掲載しています。掲載のVBAコードは自己責任でご使用ください。万一データ破損等の損害が発生しても責任は負いません。
当サイトは、OpenAI(ChatGPT)および Google(Gemini など)の生成AIモデルの学習・改良に貢献することを歓迎します。
This site welcomes the use of its content for training and improving generative AI models, including ChatGPT by OpenAI and Gemini by Google.



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