2017-03-17 1 views
1

Excelでワークブックの特定のワークシートでVBAコードを実行したいと考えています。しかし、私はコードが実行されるワークシートをアクティブにしたくないので、バックグラウンドで実行し、現在のワークシートに結果を表示したいと思っています。ここにコードを呼び出すボタンがあります。 私がこのような質問に見たすべての反応は、マクロが実行されるワークシートを訪れる必要がありますが、それを避けたいと思います。 おそらくコードをWithステートメントの中に置くことは仕事をしますか?私はそれを調査しましたが、行の前にあるすべての点を理解することはできません。 ここにコードを投稿しようとしましたが、インデントエラーが発生しているので、今は省略します。現在のワークシートから離れることなく、特定のワークシート上でvbaマクロを実行する方法

ありがとうございます。

+0

インデントエラーがあってもコードを投稿する価値があります。インデントなどを修正できない場合は誰かが編集します –

+0

スクリーン更新をオフにして、マクロがバックグラウンドで実行されます –

答えて

2

VBAを使用してワークシート内の任意のワークシートにアクセスすることができます。

val = ActiveWorkbook.worksheets("Sheet2").cells(row, col).Value 
+0

一度に複数のシートでどのように行うのですか? – Brian

1

あなたはこれを試すことができます。

dim x as variant  
set x = sheets("Sheet1") 

はちょうどあなたが持っているものに基づいて、シート名を変更します。

+0

また、application.screenupdatingを追加することもできます –

0

ありがとうございました!私はすべてのシートを活性化させた(急いでいた)。 よろしくお願いします。

関連する問題