※ ChatGPTを利用し、要約された質問です(原文:ExcelVBAのユーザーフォームについて)
ExcelVBAのユーザーフォームについて
このQ&Aのポイント
ExcelVBAでユーザーフォームを使用する方法について教えてください。ユーザーフォームを使用してデータベースを作成し、順番に表示する方法を知りたいです。
ExcelVBAを独学で学んでいる初心者です。現在、データベースを作成していますが、ユーザーフォームの使い方に悩んでいます。特定の順番でユーザーフォームを表示する方法を教えてください。
ExcelVBAを使ってユーザーフォームを作成していますが、タイトルと内容が合わなくなる問題に困っています。タイトルの変更に合わせてユーザーフォームを正しく表示する方法を教えてください。
ExcelVBAのユーザーフォームについて
ExcelVBAをゼロから独学で学んでる超初心者です。
ExcelVBAでデータベースを作っています。sheet1に配置してあるコマンドボタンでuserform1を開きそこに配置してあるlistbox1を選択するとuserform2~Xが開く設定にしています。
listbox1の内容はsheet2のデータのタイトルA~X(2列目~X列目)を読みに行っています。
userform2~Xの内容はsheet2のデータのタイトルA~Xのの内容を個別に作成しています。
流れはタイトルA(userform1-listbox1(1列目))を選択するとタイトルAの内容を表示(userform2)するというものです。userform2~Xはsheet2の上から順番に作っています。
sheet2の2列目の内容(タイトルA)→userform2
sheet2の3列目の内容(タイトルB)→userform3
という感じです。この状態だと問題なく開いていくのですが。このデータベースは後からタイトルをどんどん増やしていきます。そして、増やすたびにあいうえお順に並び替えをします。
そうすることによってタイトルと内容が合わなくなっていきます。例えば、
sheet2の2列目の内容が5列目(タイトルD)の内容に変更
sheet2の3列目の内容が2列目(タイトルA)の内容に変更
みたいな感じでバラバラになってしまいます。
流れがタイトルD(userform1-listbox1(1列目))を選択→タイトルA(userform2)を表示となってしまいます。
並び替えを行ってもタイトルとuserformがセットになる
タイトルD(userform1-listbox1(1列目))を選択→タイトルD(userform4)を表示
となる様にするにはどうしたらよいのでしょうか?
へたくそな説明でわかりにくかもしれないですが一生懸命書き込みました。
宜しくお願い致します。
お礼
回答ありがとうございます。 おっしゃるとおりだと思います。 もう少し勉強しなおしてから質問します。 アドバイスありがとうございました。