[ 初めての方へ | 一覧(最新更新順) | 全文検索 | 過去ログ ]
『コンボボックス・コントロール』(ダンボ)
ユーザフォームでコンボボックス作ってそこから名前を選択する というものを作っています。 今、バイトリスト(←シートの名前)のE3-E52まで名前データがあり そこから項目を選択するようにコンボボックスを設定したいのですが・・・ よろしくお願いします excel2002 XP
こんにちは 表示>ツールバー>フォームでコンボボックスを選択>シート上にコンボボックス配置 コンボボックスを右クリック>コントロールの書式設定 入力範囲に 「バイトリスト!$E$3:$E$52」 と設定する。でどうでしょう (oni) ^^^^ ユーザーフォーム上にあるのですよね?
Private Sub UserForm_Initialize() With Sheets("バイトリスト") Me.ComboBox1.List = .Range("e3:e52").Value End With End Sub
(Seiya)
>ユーザーフォーム上にあるのですよね? Seiyaさんありがとうございます。おおぼけですね! ダンボさん私のは無視してください。 (oni)
表示するのに十分な幅がないからでしょう。 ちなみに、ListWidthで設定出来るのでComboBox1の幅と同じ幅に されたらどうでしょうか? (Seiya)さんのコードをお借りして以下でどうでしょうか? Option Explicit Private Sub UserForm_Initialize() With Me.ComboBox1 .List = Sheets("バイトリスト").Range("e3:e52").Value .ListWidth = .Width End With End Sub (SoulMan)
ありがとうございます。 またもや問題が・・・ オプションボタンをいくつかつけたら 実行時エラー「438」 UserForm2.Show vbModeless ↑これがいけないみたいなんですが何がダメなのか分かりません
>UserForm2.Show vbModeless は別に問題ないと思いますが、、 438は 「オブジェクトは、このプロパティまたはメッソドをサポートしていません」 なので、なにか構文にないものを使ってる?とかでしょうか? または、 UserForm2.Show 0 としてみるとかぁ??? うぅ〜〜んっと、、もっと入力支援機能を使われた方がいいですよ。 #エラーはどこで反転してどんなメッセージですか? (SoulMan)
UserForm2.Show 0 でもダメでした。 もっと入力支援機能を使われた方がいいですよ。 #エラーはどこで反転してどんなメッセージですか? ってどうゆう事ですか??すいません初心者な者で
えっ?エラーになったら黄色く光ってるところはないですか? その時のエラーメッセージはなんですか? 実行時エラー「438」・・・・・とか書いてないですか? 入力支援機能は例えばUserFormのコードで Me. とだけ入力すると、その次に入力できる候補が出てくるでしょ? そこから選んでまた「.」を入力したりスペースを入力したりすると 入力出来る候補が出てくるんですよ。エクセルくんって賢いでしょ(^^; 失礼ですけど、一文字一文字入力されてるんじゃないでしょうね?? 自慢じゃないけど、私なんかは、入力候補を見ないでも打てる文字と言ったら、、 Applicationぐらいかな??(ーー;) (SoulMan)
黄色く光っているのはUserForm2.Show vbModelessで 全体の構文は Sub 昼3() UserForm2.Show vbModeless End Sub のみです。 オブジェクトはこのプロパティまたはメソッドをサポートしていません って出てきました
多分フォームが読み込めないんだと思うので、フォームの Private Sub UserForm_Initialize() この部分のコードを全部コメント化して無効にするか ここに貼り付けてみてください。 (SoulMan)
Worksheets("8-8平日").Range("e35").Value = Me.ComboBox1.Value End Sub
Private Sub CommandButton1_Click()
UserForm3.Show vbModeless Unload Me End Sub
Private Sub CommandButton2_Click()
Unload Me End Sub
Private Sub UserForm_initialize()
With Sheets("バイトリスト") Me.ComboBox1.List = .Range("e3:e52").Value .ListWidth = .Width End With End Sub
'Private Sub UserForm_Initialize()をコメントにすると成功しますけどコンボボックス使えないです
試してませんが、これでいいと思います。 Option Explicit Private Sub ComboBox1_Change() Worksheets("8-8平日").Range("e35").Value = Me.ComboBox1.Value End Sub Private Sub CommandButton1_Click() UserForm3.Show vbModeless Unload Me End Sub Private Sub CommandButton2_Click() Unload Me End Sub Private Sub UserForm_initialize() With Me.ComboBox1 .List = Sheets("バイトリスト").Range("e3:e52").Value .ListWidth = .Width End With End Sub (SoulMan)
Option Explicit入れるだけですよね??これだけで修正できるなんてすごい ありがとうございます
>Option Explicit入れるだけですよね?? よく見比べてくださいよ。 いまのコードです。 Option Explicit Private Sub UserForm_initialize() With Sheets("バイトリスト") Me.ComboBox1.List = .Range("e3:e52").Value .ListWidth = .Width End With End Sub 私が書いたコードです。 Private Sub UserForm_initialize() With Me.ComboBox1 .List = Sheets("バイトリスト").Range("e3:e52").Value .ListWidth = .Width End With End Sub (SoulMan)
ごめんなさーい 出来ましたありがとうございました
個人的には口調(文調?)は対して気にしません。 よほど失礼でない限りは。 具体的に今回の「ごめんなさーい」は別段失礼とも感じないかな。 直後に「出来ましたありがとうございました」と礼を述べているくらいだし。 回答をもらっても放置しているよりはよほど誠意を感じるくらいのものかと。 誤解を恐れず言うならば、 エクセルの学校って小学校から大学院まで全てをひっくるめる程のマンモス校 みたいなもんかな〜と、なんとなく思う。 中学生に教える大学生が居たり、 同じ高校のライバル同士で知恵を出し合って考えたり、 時にはクラス内やら、あるいは職員室で雑談してたり、 そして口うるさい用務員さんとか居ても良いだろうとも思う。 (ご近所PG)そんな感じでのほほんと
[ 一覧(最新更新順) ]
YukiWiki 1.6.7 Copyright (C) 2000,2001 by Hiroshi Yuki.
Modified by kazu.