[ 初めての方へ | 一覧(最新更新順) | 全文検索 | 過去ログ ]
『ユーザーフォームのRefEdit1について』(karakan)
UserForm1.Show Set a = Range(UserForm1.RefEdit1.Value)
クリックしたセルアドレスを取得したいのですが、エラーします。 何がいけないのでしょうか?
Set a = Range(UserForm1.RefEdit1.Value)のところでエラーして rangeメゾットは失敗しました。のエラーです。(karakan)
RefEdit1に何も入力されてないのでは? (seiya)
ユーザーフォームの定義の所で初期値valueを指定してやれば、 OKでした。(何故だろう?もちろんマクロ動かした時もセルクリックしましたが。) (karakan)
> UserForm1.Show > Set a = Range(UserForm1.RefEdit1.Value) この通りに書かれていたら、クリックすることはできないでしょう。 (seiya)
おっしゃるとおりですなんか変です。 ユーザーフォームの定義の所で初期値valueを$a$1としています。
UserForm1.Show Set a = Range(UserForm1.RefEdit1.Value) a.Select
b1セルをクリックしてもa1セルがアクティブになってしまいます。 どうしてなのでしょうか
まず UserForm1.Show は単独でSub Routine にします。
refeditのexit eventで取得すればよいのでは?
Private Sub RefEdit1_Exit(ByVal Cancel As MSForms.ReturnBoolean) Dim a As Range If RefEdi1.Value = "" Then Exit Sub Set a = Range(Me.RefEdit1.Value) MsgBox a.Address End Sub とか? (seiya) 追記:念のため..UserForm1のコントロールがRefEdit1のみだとExitイベントは 発生しません。
以下の行があると何も処理しませんでした。 If RefEdi1.Value = "" Then Exit Sub 今回フォームの初期値でA1を指定しているので、無くても良いかなと思ってます。 また、If RefEdi1.Value = "" Then Exit Subで色々試しているとRefEdi1.Value自体 が拾えないのでは?と思いこの行の前にSTOPを入れてみましたら、止まらない。 Private Sub RefEdit1_Exit(・・・自体がちょっと変わった動作するのでしょうか?(Excel 2003) どちらにしても現状希望する動作には問題ありません。 seiyaさんありがとうございます。 (karakan)
わっ! > If RefEdi1.Value = "" Then Exit Sub If RefEdit1.Value = "" Then Exit Sub ^^^ タイプミスしています... (seiya)
> やはりエラーストップしないんですね。 どういうこと? (seiya)
クロ実行した時に If RefEdi1.Value = "" Then Exit Sub で t が無い為に ラーして実行が停止すると思うのですが、そうはなりませんでした。 Private Sub RefEdit1_Exit( ここで実行される物については何だかエラーしていても 視されたり、Excel自体がダンマリになったりする様な感じがします。Excel 2003 そんな事はないですかねぇ (karakan)
RefEditのEventはあまり芳しくないかも... CommandButton を一つ追加してみてください。
Private Sub CommandButton1_Click() Dim a As Range If Me.RefEdit1.Value = "" Then MsgBox "範囲が選択されていません" Exit Sub End If Set a = Range(Me.RefEdit1.Value) MsgBox a.Address End Sub (seiya)
うまく動作しました。ありがとうございます。 If Me.RefEdit1.Value = "" Then ですが、以前の物は Me. がありません。 前の現象もこの事とは関係ないようです。どうも有り難う御座いました。 (karakan)
[ 一覧(最新更新順) ]
YukiWiki 1.6.7 Copyright (C) 2000,2001 by Hiroshi Yuki.
Modified by kazu.