質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.31%
VBA

VBAはオブジェクト指向プログラミング言語のひとつで、マクロを作成によりExcelなどのOffice業務を自動化することができます。

Q&A

解決済

2回答

4487閲覧

エクセルVBA 手動計算方法

退会済みユーザー

退会済みユーザー

総合スコア0

VBA

VBAはオブジェクト指向プログラミング言語のひとつで、マクロを作成によりExcelなどのOffice業務を自動化することができます。

0グッド

0クリップ

投稿2016/03/09 09:09

手動計算したいシートと、自動計算したいシートがあります。

手動計算したいシート・・・シート名をクリックすると計算が開始される

自動計算したいシート・・・その都度、計算される

理由・・・自動計算したいシートは手動計算したいシートへの参照元になっていて、動作が重いため。参照先を一旦制御させたいと考えています。

ご指導よろしくお願いします。

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答2

0

ベストアンサー

EXCEL VBA で使う、再計算関係であれば、

Application.Calculate Application.CalculateFull Application.CalculateFullRebuild Application.Calculation = xlCalculationAutomatic Application.Calculation = xlCalculationManual Application.Calculation = xlCalculationSemiautomatic Sheet1.Calculate ThisWorkbook.RefreshAll

辺りでしょうか、
各々グーグル検索で調べれば、使用方法は出てきますので、説明は省きます。

>理由・・・自動計算したいシートは手動計算したいシートへの参照元になっていて、
>動作が重いため。参照先を一旦制御させたいと考えています。
こちらに関しては、
1.むやみに配列式を使っていないかどうか、確認します。
2.EXCEL 揮発性関数 で検索して、意図せず揮発性関数を使用していて、
重い処理になっていないかどうか、確認します。
3.意味無く、行全部、列全部の指定をしていないか、確認します。
⇒VBAが使用できる場合、DBが使用できる場合は、配列式や、揮発性関数を
使う必要性が薄れたりします。
どうしてもの場合は、XLL で解決可能かどうか、模索します。
(検索ワード:EXCEL XLL)

手動再計算に伴うリスクと、制約が解って行うのでなければ、
シート毎の手動再計算に依存する方法は、避けた方が、無難です。
単純に、遅いからという理由であれば、何故遅いのかを解析して、
理由が解ってから、行ってください。

投稿2016/03/09 10:50

編集2016/03/09 10:59
daive

総合スコア2030

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

0

Excelのバージョンにもよるのですが、
再計算実行(ブック全体の再計算)機能と、
シート再計算(アクティブのシートのみ再計算)機能があります。
これはおそらく、ボタンにのみ区別があり、
VBAのApplication.Calculation関連には区別がないと思います。

自分の環境はExcel 2010で、この機能がありますが、
どのバージョンから存在する機能かは調べていません。

以上、
ご参考になりますでしょうか?

投稿2016/03/09 09:16

Aeona

総合スコア396

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.31%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問