Excel VBA質問箱 IV

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

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


9452 / 13646 ツリー ←次へ | 前へ→

【27245】コードをひとまとめにすることはできますか? アイアム 05/8/3(水) 14:04 質問[未読]
【27246】Re:コードをひとまとめにすることはできま... つん 05/8/3(水) 14:13 回答[未読]
【27249】Re:コードをひとまとめにすることはできま... アイアム 05/8/3(水) 14:48 質問[未読]
【27250】Re:コードをひとまとめにすることはできま... つん 05/8/3(水) 15:08 回答[未読]
【27254】解決です。ありがとうございました。 アイアム 05/8/3(水) 15:46 お礼[未読]

【27245】コードをひとまとめにすることはできます...
質問  アイアム  - 05/8/3(水) 14:04 -

引用なし
パスワード
   1つのブックに複数のシートがあります。
それぞれのシートのコードは全部一緒です。
1つのシートにはボタンが3つ配置されており、それぞれのボタンに対してマクロを登録しています。
現在、各シートごとにボタンを配置し、それぞれのシートすべてにコードをコピペしています。

一括して処理できそうな気もするのですが、方法はありますでしょうか?

【27246】Re:コードをひとまとめにすることはでき...
回答  つん E-MAIL  - 05/8/3(水) 14:13 -

引用なし
パスワード
   アイアム さん、こんにちは

>1つのブックに複数のシートがあります。
>それぞれのシートのコードは全部一緒です。
>1つのシートにはボタンが3つ配置されており、それぞれのボタンに対してマクロを登録しています。
>現在、各シートごとにボタンを配置し、それぞれのシートすべてにコードをコピペしています。

マクロを登録・・・ということは「フォーム」のボタンでしょうか?
でしたら、同じコードをそれぞれ対応するボタンに登録すればいいと思うんですが。
それとも「コントロール」のボタンでしょうか?

でしたら、標準モジュールに「Public Sub」でプロシージャを作って、
各々のボタンから、Callしたらどうでしょう?

・・・って、こんな単純なことじゃないような気もしますね・・・

【27249】Re:コードをひとまとめにすることはでき...
質問  アイアム  - 05/8/3(水) 14:48 -

引用なし
パスワード
   コードをひとまとめにすることはできますか?

1つのブックに複数のシートがあります。
それぞれのシートのコードは全部一緒です。
1つのシートにはボタンが3つ配置されており、それぞれのボタンに対してマクロを登録しています。
現在、各シートごとにボタンを配置し、それぞれのシートすべてにコードをコピペしています。

一括して処理できそうな気もするのですが、方法はありますでしょうか?


つん  - 05/8/3(水) 14:13 - 

アイアム さん、こんにちは

>1つのブックに複数のシートがあります。
>それぞれのシートのコードは全部一緒です。
>1つのシートにはボタンが3つ配置されており、それぞれのボタンに対してマクロを登録しています。
>現在、各シートごとにボタンを配置し、それぞれのシートすべてにコードをコピペしています。

マクロを登録・・・ということは「フォーム」のボタンでしょうか?
でしたら、同じコードをそれぞれ対応するボタンに登録すればいいと思うんですが。
それとも「コントロール」のボタンでしょうか?

でしたら、標準モジュールに「Public Sub」でプロシージャを作って、
各々のボタンから、Callしたらどうでしょう?

・・・って、こんな単純なことじゃないような気もしますね・・・


つん様、回答ありがとうございます。

VBAは苦手でして、あまり説明できるかわからないのですが、

ボタンは[ツール]-[ユーザー設定]-[ツールバー]で「フォーム」にチェックを入れたときに出てくるツールバーにあるボタンを使用しました。

<シート名>
サンプル1

[ボタン1][ボタン2][ボタン3]

<シート名>
サンプル2

[ボタン1][ボタン2][ボタン3]

<シート名>
サンプル3

[ボタン1][ボタン2][ボタン3]

といったブックがあります。

Visual Basic Editorを起動し、
Microsoft Excel Objectsの
 Sheet1 (サンプル1)
 Sheet2 (サンプル2)
 Sheet3 (サンプル3)
にそれぞれ、
 Sub btn1()
 End Sub
--------------
 Sub btn2()
 End Sub
--------------
 Sub btn3()
 End Sub

を記述しています。

シート名:サンプル1
 [ボタン1]にマクロの登録で「Sheet1.btn1」
 [ボタン2]にマクロの登録で「Sheet1.btn2」
 [ボタン3]にマクロの登録で「Sheet1.btn3」

シート名:サンプル2
 [ボタン1]にマクロの登録で「Sheet2.btn1」
 [ボタン2]にマクロの登録で「Sheet2.btn2」
 [ボタン3]にマクロの登録で「Sheet2.btn3」

シート名:サンプル3
 [ボタン1]にマクロの登録で「Sheet3.btn1」
 [ボタン2]にマクロの登録で「Sheet3.btn2」
 [ボタン3]にマクロの登録で「Sheet3.btn3」

というように登録しています。

ボタン1〜3のコードをひとまとめに記述した上で、
各シートのボタンをクリックしたときに、そのシート内でコードが適応されるようにしたいのです。

【27250】Re:コードをひとまとめにすることはでき...
回答  つん E-MAIL  - 05/8/3(水) 15:08 -

引用なし
パスワード
   ▼アイアム さん:
>ボタンは[ツール]-[ユーザー設定]-[ツールバー]で「フォーム」にチェックを入れたときに出てくるツールバーにあるボタンを使用しました。
>
><シート名>
>サンプル1
>
>[ボタン1][ボタン2][ボタン3]
>
><シート名>
>サンプル2
>
>[ボタン1][ボタン2][ボタン3]
>
><シート名>
>サンプル3
>
>[ボタン1][ボタン2][ボタン3]
>
>といったブックがあります。
>
>Visual Basic Editorを起動し、
>Microsoft Excel Objectsの
> Sheet1 (サンプル1)
> Sheet2 (サンプル2)
> Sheet3 (サンプル3)
>にそれぞれ、
> Sub btn1()
> End Sub
>--------------
> Sub btn2()
> End Sub
>--------------
> Sub btn3()
> End Sub
>
>を記述しています。
>
>シート名:サンプル1
> [ボタン1]にマクロの登録で「Sheet1.btn1」
> [ボタン2]にマクロの登録で「Sheet1.btn2」
> [ボタン3]にマクロの登録で「Sheet1.btn3」
>
>シート名:サンプル2
> [ボタン1]にマクロの登録で「Sheet2.btn1」
> [ボタン2]にマクロの登録で「Sheet2.btn2」
> [ボタン3]にマクロの登録で「Sheet2.btn3」
>
>シート名:サンプル3
> [ボタン1]にマクロの登録で「Sheet3.btn1」
> [ボタン2]にマクロの登録で「Sheet3.btn2」
> [ボタン3]にマクロの登録で「Sheet3.btn3」
>
>というように登録しています。
>
>ボタン1〜3のコードをひとまとめに記述した上で、
>各シートのボタンをクリックしたときに、そのシート内でコードが適応されるようにしたいのです。

あー、だいたいわかったような気がします(気がするだけやったりして・・

「Sheet1.btn1」と「Sheet2.btn1」と「「Sheet3.btn1」
の中味はまるまる同じなわけですね?
でしたら、

「標準モジュール」内(メニューの「挿入」の中にあります)に

Sub btn1()
 '処理処理
End Sub

Sub btn2()
 '処理処理
End Sub

Sub btn3()
 '処理処理
End Sub

と、ボタン1,2,3のコードを書いて、
各々のシートのボタンに対応するコードを登録したらええと思います。
こんな説明でわかられたでしょうか?

【27254】解決です。ありがとうございました。
お礼  アイアム  - 05/8/3(水) 15:46 -

引用なし
パスワード
   つん様、回答ありがとうございます。

こんな簡単な処理で出来たんですね。
必死でコピペしてました^^;
ありがとうございました。
解決ですv^^v

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