• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:エクセル VBA テキストBoxが複数の場合! )

エクセルVBAの複数のテキストボックスに対応する方法

このQ&Aのポイント
  • エクセルVBAを使って、複数のテキストボックスに対応する方法を教えてください。
  • テキストボックスに入力したIDに対応する人物の名前を表示する方法を知りたいです。
  • 他のブックにあるデータをオープンして、それを格納する方法も教えてください。

質問者が選んだベストアンサー

  • ベストアンサー
  • Wendy02
  • ベストアンサー率57% (3570/6232)
回答No.2

>ユーザーフォーム上と同じですか?? 違います。でも、テキストボックスって、Excelには、他にも3種類ありますが、そのどれなのでしょうね。その質問だけでは分かりませんね。コントロールツール、フォームツール、オートシェイプの三つがあります。それに、コードのロジックは間違いではありませんが、SS = SH1.Range("A65536").End(xlUp).Row がどのぐらいになりかは分かりませんが、数が多くなると、あまり効率が良くないようです。

pop2003
質問者

お礼

確かに効率が良くないですね! 色々教えていただきありがとうございました。

その他の回答 (1)

  • kybo
  • ベストアンサー率53% (349/647)
回答No.1

コントロールを配置しているのは、ユーザーフォームですよね。 複数の場合は、Controls("k" & I).Textのようにします。 SS = SH1.Range("A65536").End(xlUp).Row For lng = 2 To SS 'テキストボックスと同じ値があればを表示する。 For I = 1 To 20 If Controls("k" & I).Text = SH1.Cells(lng, 1).Text Then Controls("k" & I & "n").Text = SH1.Cells(lng, 2) Exit For '同じ値がない場合はメッセージとする。 Else Controls("k" & I & "n").Text = "ID確認!" End If Next I Next lng

pop2003
質問者

補足

早速の回答ありがとうございます。 使用している場所は、Sheet上にTextBoxです! ユーザーフォーム上と同じですか??

関連するQ&A