目次
Excelでは様々な方法で行番号を見つけることができますが ブイビーエー この記事では、VBAを使用してExcelで行番号を検索するための4つの便利なマクロを紹介します。
練習用ワークブックをダウンロードする
ここから無料のExcelワークブックをダウンロードし、自主的に練習することができます。
VBAを使った行番号の検索.xlsmVBAで行番号を検索する4つのマクロ エクセルで
これから紹介するデータセットでは、さまざまな地域における販売員の売上を表すメソッドを検討します。
マクロ1:選択範囲を変更して行番号を検索するVBA
まず、Excelのマクロを使います ブイビーエー を使えば、任意のセルを選択するだけで、行番号を表示することができます。 そのためには、次のようにします。 コードをシートに保存する モジュール内ではありません。
ステップス
- シートタイトルの上で右クリックし 表示コード から コンテキストメニュー .
- 次に、以下のコードを記述します。
Private Sub Worksheet_SelectionChange(ByVal Target As Range) Dim Rnumber As Integer Rnumber = ActiveCell.row If ActiveCell.Value "" Then MsgBox "The row number of clickinged cell is: " & Rnumber End If End Sub
- 後で、コードを実行する必要はありません、あなたのシートに戻るだけです。
コードのブレークダウン
- まず プライベートサブ プロシージャ- ワークシート_選択変更 .
- そして、変数を宣言します。 Rnumber かわりに 整数 .
- 列 は、アクティブなセルの行番号を決定します。
- 次に もし 文は、アクティブなセルが空かどうかをチェックし、次に MsgBox が出力されます。
- あとは、使用中のセルをクリックすれば、行番号が表示されます。
続きを読む Excel VBA: 列の中の文字列を検索して行番号を返す
マクロ2:VBAでアクティブセルの行番号を調べる
このマクロは、シートの指定したセル内のアクティブなセルの行番号を返します。 ですから、コードにはワークシート名と出力セルを記述する必要があります。 ここでは セルD14 を出力セルとする。
ステップス
- プレス ALT + F11 を開いてください。 VBAウィンドウ .
- 次に、以下のようにクリックして、新しいモジュールを挿入します。 挿入モジュール .
- その後、module-に以下のコードを入力します。
Sub Find_Row_Number_of_anan_Active_Cell() Dim wSheet As Worksheet Set wSheet = Worksheets("Active Cell") wSheet.Range("D14") = ActiveCell.row End Sub
- そして、自分のシートに戻ってください。
コードのブレークダウン
- これです。 アクティブセルの行番号の検索() は サブ
- があります。 wSheet が宣言されています。 ワークシート
- では、その セット 文は、アクティブなセルを選択します
- レンジ は、出力セル内の行番号を返します。
- ここでセルを選択し、以下のようにクリックします。 デベロッパー>マクロ .
- に出演した後 マクロ ダイアログボックスで、マクロ名を選択し 実行 .
その後すぐに、選択したセルの行番号が出力セルに返されるのがわかると思います。
が表示されているのがわかると思います。 B8 セルが選択されているので、8が出力されます。
続きを読む Excelで現在のセルの行番号を取得する方法(4つの簡単な方法)
類似の読み物
- Excelの数式で行番号を増加させる方法(6つの便利な方法)
- Excel VBAで範囲から行番号を取得する(9例)
- エクセルでセルに一致する行番号を返す方法(7つの方法)
- Excelでセルの値から行番号を取得する方法(5つの方法)
マクロ3:値をマッチングさせて行番号を探すVBA
もし、ある値を検索して行番号を見つけたいのであれば、このマクロはあなたのためにあります。 下の画像に示すように、コードに検索値と列番号を記述する必要があります。
ステップス
- 前の方法の最初の2つのステップを実行します。 をクリックすると、新しいモジュールが挿入されます。
- そして、その中に以下のコードを挿入します。
Sub Find_Row_Matching_a_Value() Dim wBook As Workbook Dim wSheet As Worksheet Dim fCell As Range Set wBook = ActiveWorkbook Set wSheet = ActiveSheet Const Matching_Value As String = "Luka" Set fCell = wSheet.Range("B:B").Find(What:=Matching_Value) If Not fCell Is Nothing Then MsgBox (Matching_Value &" is located in row: " & fCell.row) Else MsgBox (Matching_Value &" Not matched") End.If End Sub
- その後、自分のシートに戻ってください。
コードのブレークダウン
- ここで、Find_Row_Matching_a_Value()は サブ
- そして wブック と wSheet として宣言されています。 ワークシート と fCell が宣言されています。 レンジ .
- があります。 wブック と wSheet が設定されています。 アクティブワークブック と アクティブシート .
- コンスト は、検索する値の入力を受け付ける。
- 後日談です。 範囲 は、指定されたカラムを通して値を検索します。
- 次に もし と エルゼ ステートメントを使用すると、その結果が表示されます。 MsgBox .
- 後日談です。 前の方法から5番目のステップに従う を開いてください。 マクロ のダイアログボックスが表示されます。
- を選択します。 マクロ名 を押してください。 実行 .
すぐに通知ボックスが表示され、行番号が表示されます。
続きを読む Excel VBA:値の行番号を返す(5つの適切な方法)
マクロ4:行番号を検索するボタン
最後の方法では、行番号を決定するための最もスマートな方法を紹介します。 ブイビーエー ボタンを作成し、それにマクロを割り当てます。 ボタンをクリックすると、入力ボックスが開き、行番号を検索する値を入力できます。 前のマクロは指定した列を検索できましたが、このマクロはシート内の任意の列を検索することができます。
ステップス
- 再度、2番目の方法から最初の2つのステップを実行します。 をクリックすると、新しいモジュールが挿入されます。
- 次に、その中に以下のコードを挿入します。
Sub Find_Row_Number() Dim mValue As String Dim mrrow As Range mValue = InputBox("Insert value") Set mrrow = Cells.Find(What:=mValue, LookIn:=xlFormulas, LookAt _ :=xlPart, SearchOrder:=xlByRows, SearchDirection:=xlNext, MatchCase:= _ False, SearchFormat:=False) If mrrow Is Nothing Then MsgBox("No Match") ElsegBox (mrrow.row) End If End Sub
- そして、自分のシートに戻ってください。
コードのブレークダウン
- まず サブ procedure Find_Row_Number().
- そして、2つの変数を宣言した。 mValue かわりに 文字列 と 列 かわりに レンジ .
- その後、使用した 入力ボックス で値を挿入します。
- その後 セット と もし 文は、それが空でなければ、行番号を見つけます。
- 最後に MsgBox が出力されます。
- をクリックします。 デベロッパー>インサート を選択し ボタン コマンドを実行します。 フォームコントロールセクション .
- そうすると 正号 をカーソルでクリックし、希望のサイズに合わせてシート上の任意の場所をドラッグし、クリックを離します。
- マウスを離すと マクロを割り当てる ダイアログボックスが自動的に開きます。
- を選択します。 マクロ名 コードに記載されているとおりです。
- を押すだけです。 よっしゃー .
- 次に、ボタン上で右クリックし テキストを編集する をクリックして、ボタン名を編集します。
- ボタンの名前を入力し、ボタンの外側のどこかをクリックすると、名前が変更されます。
- ボタンをクリックすると、入力ボックスが表示されます。
- 最後に、検索値を挿入して よっしゃー .
さて、見てみると、マッチした値の行番号が表示されていますね。
続きを読む Excelで列の文字列を検索して行番号を返す(7つの方法)
結論
以上、VBAを使ったExcelの行番号検索についてご紹介しました。 ご質問はコメント欄でお気軽にどうぞ。 ExcelWIKIでさらに詳しく調べてみましょう。