【ユーザーフォーム】テキストボックスの値が何行目か調べる

ExcelVBA-ユーザーフォームテキストボックス選択行取得-アイキャッチ エクセルマクロで効率化する

ユーザーフォームで、テキストボックスの値が何行目か調べる方法をご紹介します。

テキストボックスとセルを連動させたときに、
表示している値が何行目のデータか調べることができます。

このページのマクロコードは、コピペで使えます。
ぜひお試しください!

ユーザーフォームにマクロコードを入力

「UserForm」にマクロコードを入力します。


Dim i As Long
Dim j As Long

Private Sub CommandButton2_Click()
'進む

    j = j + 1

    'テキストボックスに値表示
    For i = 1 To 2
        Me.Controls("TextBox" & i) = Cells(j, i)
    Next i
    
    '行取得
    Call getrow
    
End Sub

Sub getrow()
    Me.Label1.Caption = "現在:" & j & "行目"
End Sub

Private Sub UserForm_Initialize()
'ユーザーフォーム立ち上げ時に表示

    j = 1

    For i = 1 To 2
        Me.Controls("TextBox" & i) = Cells(1, i)
    Next i
    
    '行取得
    Call getrow
    
End Sub

 

動作

[Label1] に、現在表示している値が何行目かを表示します。

ユーザーフォーム立ち上げ時に [ j = 1 ] を実行し、

「次へ」をクリックするたびに [ j ] が1つずつ増えていきます。

[ j ] の値を利用して、現在の行番号を出力します。

※変数の宣言をモジュールの先頭で行ってください。


 
この記事がお役に立ちますと幸いです。
 

【VBAユーザーフォーム】何ができるの?:具体的な使用例19選
...

 

「Excel自動化[最強]時短仕事術」
自動化の基礎と時短に役立つテクニック解説書
毎日の定型業務を手際良く行え、大幅な業務効率化を実現!