
開く、上書き保存 に掛かる時間が長い
いつもお世話になります。
OSはWin10 エクセルは2016 です。
ブックを「開く」 又は 「上書き保存」 の時間がかかります。
因みに、
開く は約1分
上書き保存 は1分45秒
です。
少し時間を短縮できないでしょうか。
もし可能ならご指導願えませんでしょうか。
私が憶測するに
1 ガンチャートに名前を入れている
2 構文でCells(GYOU, 1).Cells(GYOU, 2).と言う具合に繰り返し
が関係していると思いますが。
※参考
1 VBAの構文は
Private Sub UserForm_Initialize()
TextBox1.Text = Format(Date, "mm/dd")
End Sub
Sub 記入_Click()
Dim GYOU '追加
GYOU = Range("C65536").End(xlUp).Row + 1
Cells(GYOU, 1).Value = Range("N1").Value
Cells(GYOU, 2).Value = Range("N2").Value
Cells(GYOU, 3).Value = Range("N3").Value
Cells(GYOU, 5).Value = Range("N4").Value
Cells(GYOU, 6).Value = Range("N5").Value
Cells(GYOU, 7).Value = Range("N6").Value
Cells(GYOU, 8).Value = Range("N7").Value
Cells(GYOU, 9).Value = Range("N8").Value
End Sub
2 B7の関数は
=IF(COUNTIFS(入力!$D:$D,$A7,入力!$G:$G,"<="&B$5,入力!$H:$H,">="&B$5,入力!$G:$G,">0",
入力!$H:$H,"<9999/12/31")=1,INDEX(入力!$E:$E,SUMPRODUCT(ROW(入力!$E$1:INDEX(入力!$E:$E,
MATCH(9E+99,入力!$A:$A)))*(入力!$D$1:INDEX(入力!$D:$D,MATCH(9E+99,入力!$A:$A))=$A7)*(入力!$G$1:INDEX(入力!$G:$G,MATCH(9E+99,
入力!$A:$A))<=B$5)*(入力!$H$1:INDEX(入力!$H:$H,MATCH(9E+99,入力!$A:$A))>=B$5))),IF(COUNTIFS(入力!$D:$D,$A7,入力!$G:$G,"<="&B$5,
入力!$H:$H,">="&B$5,入力!$G:$G,">0",入力!$H:$H,"<9999/12/31")>1,"重複",""))

No.1ベストアンサー
- 回答日時:
こんばんは!
>2 構文でCells(GYOU, 1).Cells(GYOU, 2).と言う具合に繰り返し
>が関係していると思いますが。
おそらくユーザーフォームのコマンドボタンのコードだと思いますので、
ブックを開く、保存する。といった場合には直接関係ないと思います。
(コマンドボタンをクリックするとマクロが実行されるはず)
一つ気になるのが、数式内に
SUMPRODUCT関数を使っていますね。
SUMPRODUCT関数は配列数式になりますので、極端に広い範囲を指定してしまうと
計算速度が落ちてしまいます。
おそらくSheetの最終行までデータがある!というコトはないと思いますので、
SUMPRODUCT関数の範囲をある程度限定してみてはどうでしょうか。
SUMPRODUCT関数内のINDEX関数の範囲が列全体になっていますので、
>SUMPRODUCT(ROW(入力!$E$1:INDEX(入力!$E:$E,
の部分を
>SUMPRODUCT(ROW(入力!$E$1:INDEX(入力!$E1:$E3000,
といった感じで、もちろん他の範囲も同じ行数に合わせます。
※ 検証していませんので、
別の原因ならごめんなさい。m(_ _)m
おはよう
範囲を 例えば、
E:E H:H を tomoさんのアドバイスで
$E$1:$E$1000
$H$1:$H$1000
などのように変更したらばっちり解決できました
ありがとうございました
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
このQ&Aを見た人はこんなQ&Aも見ています
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
エクセルのVBAで集計をしたい
-
【マクロ】実行時エラー '424':...
-
【画像あり】オートフィルター...
-
【マクロ】左のブックと右のブ...
-
【マクロ】数式を入力したい。...
-
【マクロ】元データと同じお客...
-
【マクロ】【相談】Excelブック...
-
Office2021のエクセルで米国株...
-
vba テキストボックスとリフト...
-
【マクロ】【配列】3つのシー...
-
他のシートの検索
-
【マクロ】変数に入れるコード...
-
エクセルのリストについて
-
エクセルの関数について
-
【関数】3つのセルの中で最新...
-
【マクロ】excelファイルを開く...
-
エクセルシートの見出しの文字...
-
LibreOffice Clalc(またはエク...
-
【関数】=EXACT(a1,b1) a1とb1...
-
エクセルの複雑なシフト表から...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
【マクロ】元データと同じお客...
-
エクセルの関数について
-
【画像あり】オートフィルター...
-
エクセルのVBAで集計をしたい
-
エクセルのリストについて
-
【マクロ】数式を入力したい。...
-
【マクロ】【相談】Excelブック...
-
Office2021のエクセルで米国株...
-
【マクロ】実行時エラー '424':...
-
他のシートの検索
-
エクセルの複雑なシフト表から...
-
【マクロ】【配列】3つのシー...
-
vba テキストボックスとリフト...
-
【マクロ】左のブックと右のブ...
-
【マクロ】変数に入れるコード...
-
エクセルシートの見出しの文字...
-
【マクロ】別ファイルへマクロ...
-
【関数】同じ関数なのに、エラ...
-
Amazonでマイクロソフトオフィ...
-
ページが変なふうに切れる
おすすめ情報