新しく質問する

リストボックスから項目を選択してセルに入力したいのです

役に立った:0件
  • 質問者:aitaine
  • 投稿日時:2008/05/01 18:43
  • 困り度:すぐに回答が欲しいです
  • 友達に紹介
  • ブログに書く
  • 教えて!gooお気に入り

EXcel2003でマクロ作成中です。エクセルシートのN列を右クリックすると、ユーザーォームが現れ、その中のリストボックスから項目を選択すると選択文字が白色に反転します。
ユーザーホームの下方に設置した「入力する」ボタンをクリックする、アクティブセルにテキスト文字列が挿入されます。
Option Explicit
Private Sub CommandButton1_Click()
With ListBox1
If .ListIndex = -1 Then
MsgBox "項目を選択してくだい"
Else
ActiveCell.Value = ListBox1.list(ListBox1.ListIndex)
End If
End With
Unload UserForm1
End Sub
---------------------------
Private Sub CommandButton2_Click()
Unload UserForm1
End Sub
------------------------------
これと同じものをB列につくりました。エクセルシートのB列を右クリックすると、リストボックスが表示されますが、その中の項目を選択しようとすると、一瞬にしてユーザーフォーム自体が消えてしまい項目を
選択できません。
Private Sub CommandButton1_Click()
With ListBox2
If .ListIndex = -1 Then
MsgBox "項目を選択してくだい"
Else
ActiveCell.Value = ListBox2.list(ListBox2.ListIndex)
End If
End With
Unload UserForm2
End Sub
-----------------------------
Private Sub CommandButton2_Click()
Unload UserForm2
End Sub
------------------------------------------
まったく同じものを作って内容だけかえたのですが、できません。
どうしてでしょうか?ご教授おねがいします。

この質問への回答は締め切られました。
このQ&Aは役に立ちましたか?(役に立った:0件)
  • 参考になった:0件

No.1ベストアンサー20pt

  • 回答者:pulsa
  • 回答日時:2008/05/02 02:20

どうも
ん~ちょっとよく判りませんが、UserForm1の内容をコピーしてUserForm2を作ったんではないんですね
UserForm2はListBoxが『2』ですもんね
この状態で表示されたUserForm2のListBoxが『1』で、ListBox1_Enterに UnLoad Me
とか書いてあるなら判りますけど、違うんなら正直この手の事柄は物(エクセルファイル自体)を見ないと、なんとも言い様がないです

一度UserForm3を作って、それにUserform1の内容をコピーして貼り付けし、プロパティも全く同じに指定してUserForm1の完全なコピーを作成してから、細部を調整してはいかがですか?
意外な思い込みで、間違っている事に気付く場合もあるでしょうし、気が付かなくても、Userform3が望みどおり動作するなら、そのまま採用
UserFormの番号が跳ぶのがいやなら、Userform3が望みどおり動作するようになった後で、UserForm2を開放しマクロ全体(カレントプロジェクト)に対してUserForm3→UserForm2と置き換えを実行
UserForm3自体をUserForm2と改名すれば完了です

お試しを

通報する

この回答へのお礼

すみません。あなた様のいうとおりやったら、できました!ありがとうございました。

  
このQ&Aは役に立ちましたか?(役に立った:0件)

このページのトップへ

Facebook公式ページ

公式Twitter