Excel VBA質問箱 IV

当質問箱は、有志のボランティア精神のおかげで成り立っています。
問題が解決したら、必ずお礼をしましょうね。
本サイトの基本方針をまとめました。こちら をご一読ください。

投稿種別の選択が必要です。ご注意ください。
迷惑投稿防止のため、URLの入力を制限しています。ご了承ください。


9550 / 13644 ツリー ←次へ | 前へ→

【26727】ActiveXについて オートマチック 05/7/15(金) 10:01 質問[未読]
【26729】Re:ActiveXについて りん 05/7/15(金) 10:34 発言[未読]
【26730】Re:ActiveXについて オートマチック 05/7/15(金) 10:57 質問[未読]
【26731】Re:ActiveXについて りん 05/7/15(金) 11:12 発言[未読]
【26734】Re:ActiveXについて オートマチック 05/7/15(金) 14:15 質問[未読]
【26735】Re:ActiveXについて Jaka 05/7/15(金) 14:53 回答[未読]
【26738】Re:ActiveXについて りん 05/7/15(金) 16:32 発言[未読]
【26745】Re:ActiveXについて オートマチック 05/7/15(金) 18:03 質問[未読]
【26746】Re:ActiveXについて りん 05/7/15(金) 18:41 発言[未読]
【26747】Re:ActiveXについて オートマチック 05/7/15(金) 19:03 お礼[未読]
【26736】Re:ActiveXについて Kein 05/7/15(金) 16:24 発言[未読]

【26727】ActiveXについて
質問  オートマチック  - 05/7/15(金) 10:01 -

引用なし
パスワード
   お世話になっております。
たびたび申し訳ありませんが、ひとつ質問があります。
今、シートに張り付いたActiveXのコマンドボタン(このコマンドボタンには、
クリックした時、一連の処理を実行するマクロが入っています。)
を別の新規のシートにコピーして、コピー先でもコマンドボタンを
押して、一連の処理が実行できるようなことをマクロ上で行いたいのですが、
どうしたらいいでしょうか?
お忙しいところ申し訳ありませんが、わかる方いたら教えていただきたいので
すが・・・。
お願いします。

【26729】Re:ActiveXについて
発言  りん E-MAIL  - 05/7/15(金) 10:34 -

引用なし
パスワード
   オートマチック さん、おはようございます。

>今、シートに張り付いたActiveXのコマンドボタン(このコマンドボタンには、
>クリックした時、一連の処理を実行するマクロが入っています。)
>を別の新規のシートにコピーして、コピー先でもコマンドボタンを
>押して、一連の処理が実行できるようなことをマクロ上で行いたいのですが、
>どうしたらいいでしょうか?

シートごとコピーしてはだめなんですか?

【26730】Re:ActiveXについて
質問  オートマチック  - 05/7/15(金) 10:57 -

引用なし
パスワード
   ▼りん さん:
おはようございます。
コマンドボタン(このボタンを押すと、一連の処理を行うマクロが入っています。)を貼り付けたシートを丸ごとコピーすると、コマンドボタン付きでシートは、コピーされるのですが、コマンドボタンに入っているマクロもコピーされないので、コピー先で貼りついたコマンドボタンを押しても、コピー元で貼り付けた
コマンドボタンを押した時のようなことが出来ないのです。

何かないでしょうか?

【26731】Re:ActiveXについて
発言  りん E-MAIL  - 05/7/15(金) 11:12 -

引用なし
パスワード
   ▼オートマチック さん:
>▼りん さん:
>おはようございます。
>コマンドボタン(このボタンを押すと、一連の処理を行うマクロが入っています。)を貼り付けたシートを丸ごとコピーすると、コマンドボタン付きでシートは、コピーされるのですが、コマンドボタンに入っているマクロもコピーされないので、コピー先で貼りついたコマンドボタンを押しても、コピー元で貼り付けた
>コマンドボタンを押した時のようなことが出来ないのです。


実験
シート名が、Sheet1
コマンドボタン名が、CommandButton1
 であるとして。

Sheet1にコマンドボタンを1つ配置
そのコマンドボタンをクリックして、以下のイベントを記述
Private Sub CommandButton1_Click()
  MsgBox ActiveSheet.Parent.Name, vbInformation, "ブック名"
End Sub

標準モジュールを追加して、
Sub test()
  'シートをコピーして新しいブックを作る
  ThisWorkbook.Worksheets("Sheet1").Copy
  'Clickイベントを起こす
  ActiveSheet.OLEObjects("CommandButton1").Object.Value = True
End Sub

このTestを実行すると新しいブックの名前が表示されるはずですが。

【26734】Re:ActiveXについて
質問  オートマチック E-MAIL  - 05/7/15(金) 14:15 -

引用なし
パスワード
   >実験
>シート名が、Sheet1
>コマンドボタン名が、CommandButton1
> であるとして。
>
>Sheet1にコマンドボタンを1つ配置
>そのコマンドボタンをクリックして、以下のイベントを記述
>Private Sub CommandButton1_Click()
>  MsgBox ActiveSheet.Parent.Name, vbInformation, "ブック名"
>End Sub
>
>標準モジュールを追加して、
>Sub test()
>  'シートをコピーして新しいブックを作る
>  ThisWorkbook.Worksheets("Sheet1").Copy
>  'Clickイベントを起こす
>  ActiveSheet.OLEObjects("CommandButton1").Object.Value = True
>End Sub
>
>このTestを実行すると新しいブックの名前が表示されるはずですが。
りんさんありがとうございます。
りんさんのとおりに一からやってみたら、うまくいったのですが、
今、取り組んでいるマクロでやると、WORKSHEETクラスのOBJECTプロパティーが取得できません、というメッセージが出ます。
何でしょうか?

【26735】Re:ActiveXについて
回答  Jaka  - 05/7/15(金) 14:53 -

引用なし
パスワード
   こんにちは。

こういう名前は合ってますか?
("Sheet1")
("CommandButton1")

どこでエラーになったのかわかんないけど....。

【26736】Re:ActiveXについて
発言  Kein  - 05/7/15(金) 16:24 -

引用なし
パスワード
   どうしてもActiveXのコントロールを使わないとダメなんですか ?
なんか根拠が薄い気がしますが・・。もしフォームツールバーのボタンでも
良ければ、簡単に複数のボタンに対して一つのマクロを登録できるから
便利だと思いますよ。Applicationが持っているオブジェクトだから、変な動作を
する危険性も少ないし・・。

【26738】Re:ActiveXについて
発言  りん E-MAIL  - 05/7/15(金) 16:32 -

引用なし
パスワード
   こんにちわ

>>りんさんのとおりに一からやってみたら、うまくいったのですが、
前回の実験コードはうまくいったということですね。

>>今、取り組んでいるマクロでやると、WORKSHEETクラスのOBJECTプロパティーが取得で
>>きません、というメッセージが出ます。
>どこでエラーになったのかわかんないけど....。
Jakaさんと同じく、今取組んでいるコードがどんな内容なのかわかりませんが、WorksheetオブジェクトにはOBJECTプロパティはXL2000にはありません。

コード(の一部)を載せ、ステップインで追跡してどこでエラーが出るか書いたほうが返事がつきやすいと思います。

【26745】Re:ActiveXについて
質問  オートマチック E-MAIL  - 05/7/15(金) 18:03 -

引用なし
パスワード
   ▼りん さん:
コードをメールで送ります。
お忙しいところ、ご迷惑かけてすみません。

【26746】Re:ActiveXについて
発言  りん E-MAIL  - 05/7/15(金) 18:41 -

引用なし
パスワード
   こんばんわ。

途中経過です。

WorksheetクラスのOLEObjectプロパティ〜 のエラーの原因は、コマンドボタンが他の図形とグループ化されていたためでした。

【26747】Re:ActiveXについて
お礼  オートマチック E-MAIL  - 05/7/15(金) 19:03 -

引用なし
パスワード
   ▼りん さん:
>こんばんわ。
>
解決しました。
お忙しい中、
いろいろありがとうございました。

9550 / 13644 ツリー ←次へ | 前へ→
ページ:  ┃  記事番号:
2610219
(SS)C-BOARD v3.8 is Free