アプリ版:「スタンプのみでお礼する」機能のリリースについて

Excelで以下のマクロを教えて下さい
・Aというマクロ処理を特定(複数)のシートのみ実行する
・Aというマクロ処理を全てのシートで実行する

Aマクロは作成済みなのですが、複数シートでマクロを実行する方法がわかりません


宜しくお願い致します

A 回答 (4件)

No1です。



> 試してみたのですがアクティブなシートしか変更が反映されませんでした。

どのようなマクロか存じませんが、そのために
st.Activate '(アクティブにする必要があるなら)
としたのですがこの部分は使用されなかったのでしょうか?

> マクロをインポートして実行するだけではないのでしょうか?

意味不明です。
マクロAはどこに記述されているのですか?
どのようなコードなのですか?
    • good
    • 1
この回答へのお礼

すいませんできました

VBエディタでアクティブシートの「Sheet」オブジェクトを選択してしたためアクティブシートしか反映されなかったようです。
対象を「ThisWorkbook」に変更したら正常に実行されました
ありがとうございます

お礼日時:2009/03/31 15:45

Sub 複数シート()


Dim sh As Worksheet
For Each sh In Worksheets(Array("Sheet1", "sheet3"))
sh.Select
Call Aマクロ
Next
End Sub

Sub 全シート()
Dim sh As Worksheet
For Each sh In Worksheets
sh.Select
Call Aマクロ
Next
End Sub

>マクロをインポートして実行するだけではないのでしょうか?
インポートどこに???
    • good
    • 1

作成済みのAマクロを提示されて相談された方が回答が寄せられ易いと思います。

    • good
    • 2

Sub 特定シート()


For Each st In Worksheets
Select Case st.Name
Case "Sheet2", "Sheet4", "Sheet7" '特定シート名
st.Activate '(アクティブにする必要があるなら)
Call Aマクロ
End Select
Next
End Sub

Sub 全シート()
For Each st In Worksheets
st.Activate '(アクティブにする必要があるなら)
Call Aマクロ
Next
End Sub

一例ですが、こんな感じでしょうか。
    • good
    • 1
この回答へのお礼

ありがとうございます
試してみたのですがアクティブなシートしか変更が反映されませんでした。
アクティブシートを別シートにすれば変更されるのですが、
マクロをインポートして実行するだけではないのでしょうか?

実行したマクロはいくつかあるのですが全て簡単なfor文のループです

お礼日時:2009/03/30 17:28

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!

このQ&Aを見た人はこんなQ&Aも見ています