
マクロを含むエクセル(EXCEL2000)をHTMLのページからハイパーリンクで呼び出しています。そのエクセルでボタン操作に従い罫線やセルの着色を行っています。しかし、着色結果が更新されません。スクロールバー等で画面を移動すると正しく着色されています。このエクセルを通常に起動した場合は、問題なく動作するのですが、シート全体を更新する方法を教えて下さい。
各関数では、以下のスクリーンアップデータの処理を入れています。
Application.ScreenUpdating = False
(処理)
Application.ScreenUpdating = False
No.3ベストアンサー
- 回答日時:
たぶん、EXCEL独特の問題だと思うのですが、HTML の場合、すでに色の部分を表面上で使用しているので、それでメモリが占有させているのではないかと私は思っています。
他にも、
ActiveWorkbook.HTMLProject.RefreshDocument True
というのがありますね。
ホスト アプリケーション内のブックに含まれる HTML プロジェクトを更新する、というのがありますね。
アドバイス頂いた方法では、うまくいきませんでしたが、VBAの手順としては、問題なさそうなので安心しました。
アプリケーションの問題かブラウザとの相性の問題のようですね。ありがとうございました。
No.2
- 回答日時:
Application.ScreenUpdating
では、ダメだったということでしょうか?
もし、そうなら、いろいろ実験してみないとなんともいえませんね。
例えば、全体をActivate しなおす方法。
AppActivate (Application.Caption)
シートをActivate する。
Worksheets("Sheet1").Activate
また、シートを活性化する。
Application.Calculate
まだ、他にもあるかもしれません。
この回答への補足
回答ありがとうございます。
>Application.ScreenUpdating
>では、ダメだったということでしょうか?
はい、ダメだめでした。
逆に、この処理を止めると画面が、ばたつきますが、着色等は正しく完了します。しかし、ショートカットでも同じエクセルを使用したいのでApplication.ScreenUpdatingの処理は、残しておきたいです。
>AppActivate (Application.Caption)
この処理は、エクセルを起動するという意味でしょうか?
動作確認できませんでした。
>Worksheets("Sheet1").Activate
一旦、別シートへアクティブを切り替えると正しく表示されます。しかし、自シートに対しては、正しく表示されませんでした。
>Application.Calculate
正しく表示されませんでした。
今暫定的に、Application.ScreenUpdating=Trueの後、一度、全セルを選択して、その選択を解除する処理を入れています。少し、見苦しいですが、正しい表示を行うことができます。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Excel(エクセル) エクセル VBA実行中のApplication.ScreenUpdatingについて 3 2023/07/13 21:06
- Excel(エクセル) エクセルで、特定のセルの内容を更新すると、別の特定セルに 更新日付が自動的に表示させる方法はあります 1 2022/11/14 21:03
- Visual Basic(VBA) エクセルのマクロで対象ごとにシート分けしてその内容をセルに書き込みたい 9 2022/08/24 13:23
- Visual Basic(VBA) エクセルのマクロについて教えてください。 1 2022/10/11 12:55
- Access(アクセス) Accessのクエリの結果を、既存のエクセルに追加したい 2 2022/07/31 22:44
- Excel(エクセル) エクセルの条件付き書式で*を使いたい 4 2022/05/13 16:49
- Excel(エクセル) マクロで謎の現象が起きていて困ってます。 エクセルで作ったボタンを押すとマクロが動いて処理をしてくれ 3 2023/06/22 17:28
- Excel(エクセル) 【マクロ】マクロが保存されているエクセルとは、別のエクセルブックの全シートの非表示列を再表示したい 1 2022/12/24 20:48
- Visual Basic(VBA) エクセルのマクロについて教えてください。 2 2023/03/08 09:08
- Excel(エクセル) CSVファイルでVBAを動かす方法 3 2023/04/04 10:22
このQ&Aを見た人はこんなQ&Aも見ています
-
マクロ実行後に別シートの残像が残り、オブジェクトが見えなくなる
Visual Basic(VBA)
-
excelでVBA実行後に画面に残るゴミを無くしたい。
Excel(エクセル)
-
Refreshメソッドの使い方
Visual Basic(VBA)
-
-
4
VBAで保存しないで閉じると空のBookが残る
Excel(エクセル)
-
5
エクセルのラベルの値(文字列)を垂直方向で中央揃えにするには?
Excel(エクセル)
-
6
VBAでブックを非表示で開いて処理して閉じる方法
Excel(エクセル)
-
7
VBAのコマンドボタンの文字列の改行方法は?
Visual Basic(VBA)
-
8
VBAでユーザーフォームを再表示させたい。
Excel(エクセル)
-
9
Excelのセルにユーザー名を表示する方法
Excel(エクセル)
-
10
エクセルVBAで、MsgBox やInputBox は、画面の中央以外に表示させたい。
Excel(エクセル)
-
11
エクセル:マクロ「Application.CutCopyMode = False」って?
Excel(エクセル)
-
12
EXCEL VBAで全選択範囲の解除
Excel(エクセル)
-
13
Application.ScreenUpdating = Falseが効きません
Visual Basic(VBA)
-
14
マクロ実行後、表示がおかしくなる
Excel(エクセル)
-
15
Excelマクロでの再読込み方法
Excel(エクセル)
-
16
VBAでループ内で使う変数名を可変にできないか。
Visual Basic(VBA)
-
17
VBA シートのボタン名を変更したい
Visual Basic(VBA)
-
18
VBA 変数名に変数を使用したい。
Visual Basic(VBA)
-
19
ユーザーフォームを表示中にシートの操作をさせるには
Excel(エクセル)
-
20
特定のシートのみ再計算させない方法は?
Excel(エクセル)
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
VBAでエクセルシートを更新...
-
excelで、セル内に文字が入力さ...
-
表示倍率を変更させない方法
-
エクセル表作成についてお分か...
-
エクセルのシートを同時に行削...
-
シートを串刺しで抽出したいの...
-
エクセル、日々の集計整理方法。
-
エクセルの担当者別にシートを...
-
【エクセル】シートのロックで...
-
マクロボタンを押すと、ファイ...
-
エクセルで最高値、最低値の日...
-
エクセルのチェックボックスを...
-
差し込み印刷に当日の日付が入...
-
「24日の0時」って・・・
-
日付の大小の表現
-
「時間」、「期日」、「日付」...
-
Excel関数 「日付を入力...
-
Excelについて
-
エクセル マクロ 名前を付けて...
-
エクセルで数字から名前に変...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
VBAでエクセルシートを更新...
-
excelで、セル内に文字が入力さ...
-
エクセルのシートを同時に行削...
-
表示倍率を変更させない方法
-
【エクセル】シートのロックで...
-
エクセルの担当者別にシートを...
-
エクセルで、2つのシートにある...
-
エクセルで別シート、または別...
-
VBAで1つのブックに転記する方...
-
エクセルVBAでデータ検索について
-
エクセル◎○の人は、一つ昇格し...
-
エクセルでデータを簡単に登録...
-
エクセルVBAで65536レコードを...
-
エクセルのマクロ。 お世話にな...
-
教えてください!エクセルのシ...
-
シートを串刺しで抽出したいの...
-
マクロを業務で生かしたい!
-
エクセル表作成についてお分か...
-
エクセルVBAの文字列の部分一致...
-
エクセルで商品ごとのリストフ...
おすすめ情報