Page 751 ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 通常モードに戻る ┃ INDEX ┃ ≪前へ │ 次へ≫ ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ ▼「フォーム」のチェックボックスについて aki 03/2/14(金) 13:29 ┗Re:「フォーム」のチェックボックスについて Jカーター 03/2/14(金) 14:04 ┗Re:「フォーム」のチェックボックスについて aki 03/2/14(金) 18:34 ┗Re:「フォーム」のチェックボックスについて Jカーター 03/2/14(金) 19:56 ┗Re:「フォーム」のチェックボックスについて aki 03/2/14(金) 21:01 ┗Re:「フォーム」のチェックボックスについて Jカーター 03/2/14(金) 21:27 ┗Re:「フォーム」のチェックボックスについ... コロスケ 03/2/14(金) 23:24 ┗Re:「フォーム」のチェックボックスについ... aki 03/2/17(月) 10:18 ─────────────────────────────────────── ■題名 : 「フォーム」のチェックボックスについて ■名前 : aki ■日付 : 03/2/14(金) 13:29 -------------------------------------------------------------------------
はじめまして。 チェックボックスの値を拾いたいのですが どのようにしたら良いか教えてください。 表示>ツールバー>コントロールボックスのチェックボックスではなく、 ツールバー>フォームの中にあるチェックボックスの値を セルへのリンクを使わずに、マクロで直接とりたいのですが、 方法がありましたら、よろしくお願いいたします。 |
こんにちは。 チェックボックスの名前は実際の名前に変更してください。 (スペースに注意) Sub test() MsgBox Sheets("Sheet1").CheckBoxes("チェック 1").Value End Sub 違ったらすみません。 |
▼Jカーター さん: ご回答ありがとうございます。 早速試してみたのですが、 実行時エラー1004 ”WorksheetクラスのCheckBoxesプロパティを取得できません。” が出てしまいます。 はじめの質問で条件がもれていましたが(すみません) 値を取得するチェックボックスはマクロを記述しているシートとは 別のBookです。 同一ファイル内で試すと(マクロの記述もチェックボックスのオブジェクトも同一ファイル)Jカーターさんのご指摘どおり、値を取得することができました。 別ファイルでは制御できないのでしょうか? ご存知でしたら、ご回答いただけると大変たすかります。 よろしくお願いします。 |
こんばんは。 以下のようにブック名を書いてみてはどうでしょうか? Sub test2() MsgBox Workbooks("Test.xls").Sheets("Sheet1").CheckBoxes("チェック 1").Value End Sub 念のため確認します。 対象ブックは当然開いてますよね? 違ったらすいません。 |
Jカータさん 早々のご回答ありがとうございます。 対象ブックを開いて、対象のシートをアクティブにしています。 シート名に日本語名がついているのですが、 その部分が拾えていないようです?? ご回答いただいたように、新規で作成したBookでSheet1となっていれば 問題なくうまくいきます。 当該部分のコードは↓ MsgBox Workbooks(myFileName).Sheets("仕様定義").CheckBoxes("チェック 9").Value と記述しています。 変数myFileNameには”Book3.xls”が代入されています。 チェックボックスも9まで確かにあるのですが。 シート名が日本語になっていると動作しない場合がありますか? |
こんばんは。 漢字が原因とは思えません。 というか実際に再現しません。 変数を実際のブック名に置き換えるとか シート名を変更してみるとか チェックボックスの名前を変えてみるとか いろいろ検証されてみてはどうでしょうか? もし、以下のエラーなら ブック名シート名は存在するが、そのシートにチェックボックスが無いか または、チェックボックスの名前が間違っている可能性があります。 実行時エラー1004 ”WorksheetクラスのCheckBoxesプロパティを取得できません。” |
こんばんは。Excel日本語版2000+Windows2000でも問題なく動きました。 Sub Test() Const myFileName As String = "Book3.xls" MsgBox Workbooks(myFileName).Sheets("仕様定義").CheckBoxes("チェック 9").Value End Sub 仕様定義のシート名の前後にスペースが入っていたりしませんか?(念のため) |
Jカーターさん、コロスケさん ご回答ありがとうございました。 ご指摘の通り、”仕様定義”のシート名でも チェックボックスの値を取得することができることを確認できました。 漢字のシート名が原因ではなかったようです。 チェックボックスの名称が腐っていたようです。 チェックボックスの名称をリネームしたら動きました。 本っ当にありがとうございました!! |