ID非公開

2021/7/26 23:07

33回答

VBA ユーザーフォームからのセルの指定について教えてください

Visual Basic | Excel16閲覧xmlns="http://www.w3.org/2000/svg">50

ベストアンサー

0

ID非公開

質問者2021/7/26 23:45

どうもありがとうございます! 明日職場で試してご報告しますね♪

ThanksImg質問者からのお礼コメント

どうもありがとうございました! 一番先にご回答頂きましたので、ベストアンサーとさせて頂きます♪

お礼日時:7/27 21:41

その他の回答(2件)

0

CommandButton1_Clickイベントに以下を。 指定名が存在しない場合は、変数nの内容はゼロです。 Dim n '<---必要なら宣言セクションでPublicで Dim Namae, LastR, R Dim WS As Worksheet 'UserFormの表示がSheet1では無いかもしれないので Set WS = Worksheets("Sheet1") Namae = TextBox1 If Namae = "" Then     MsgBox "名前の記入がありません。"     Exit Sub End If n = 0 LastR = WS.Cells(Rows.Count, "B").End(xlUp).Row For R = 6 To LastR     If WS.Cells(R, "B") = Namae Then         n = R         Exit For     End If Next R If n = 0 Then     MsgBox "指定の名前は存在しません。" Else     MsgBox n & " 行目です。" End If

ID非公開

質問者2021/7/27 21:39

ありがとうございます。 とても勉強になりました! 部分的にも使えるので助かります。

0

Option Explicit Const 管理表シート名 As String = "Sheet1" Private Sub CommandButton1_Click() Dim 名前 As String 名前 = TextBox1.Text If 名前 = "" Then MsgBox "名前が入力されていません" Exit Sub End If Dim 検索範囲 As Range Set 検索範囲 = 検索範囲をゲット If 検索範囲 Is Nothing Then MsgBox "検索範囲が無効です" Exit Sub End If Dim 行番号 As Long 行番号 = 名前から行番号をゲット(名前, 検索範囲) If 行番号 = -1 Then MsgBox "「" & 名前 & "」 は見つかりませんでした" Else MsgBox "「" & 名前 & "」 は " & 行番号 & " 行目にあります" End If End Sub Private Function 検索範囲をゲット() As Range Dim シート As Worksheet Set シート = Worksheets(管理表シート名) Dim 最終行&: 最終行 = シート.Cells(Rows.Count, "B").End(xlUp).Row If 最終行 > 6 Then Set 検索範囲をゲット = シート.Range("B6:B" & 最終行) End If End Function Private Function 名前から行番号をゲット(名前 As String, 範囲 As Range) As Long Dim 行番号 As Long Dim 見つかったセル As Range Set 見つかったセル = 範囲.Find(名前) If Not 見つかったセル Is Nothing Then 行番号 = 見つかったセル.Row Else 行番号 = -1 End If 名前から行番号をゲット = 行番号 End Function

画像

ID非公開

質問者2021/7/27 21:38

ありがとうございます。 図解で解りやすかったです。 今後活用させて頂きます♪