No.1
- 回答日時:
こんにちは。
個人用マクロブックのThisWorkBookモジュールに
Option Explicit
Private WithEvents xlApp As Application
Private Sub Workbook_Open()
Set xlApp = Application
End Sub
Private Sub xlApp_WorkbookOpen(ByVal Wb As Workbook)
ActiveWindow.Zoom = 75
'ActiveWindow.Zoom = 80
End Sub
ではいかがでしょう?
No.2
- 回答日時:
No.1です。
ActiveWindow.Zoom = 75 を書くイベントを間違えました。
Option Explicit
Private WithEvents xlApp As Application
Private Sub Workbook_Open()
Set xlApp = Application
End Sub
Private Sub xlApp_WorkbookActivate(ByVal Wb As Workbook)
ActiveWindow.Zoom = 75
'ActiveWindow.Zoom = 80
End Sub
と訂正させて下さい。
この回答への補足
回答ありがとうございます。ご教示いただいた内容で設定しました。望んでいた内容でした。さらにもう1点教えていただければと思います。ご教示いただいた設定では、sheet1は縮小した表示になるのですが、sheet2、sheet3は100%のままです。すべてのシートが縮小になるように設定できませんか?よろしくお願いいたします。
補足日時:2007/01/01 20:14No.3
- 回答日時:
>すべてのシートが縮小になるように設定できませんか?
ということであれば以下のようにして下さい。
Option Explicit
Private WithEvents xlApp As Application
Private Sub Workbook_Open()
Set xlApp = Application
End Sub
Private Sub xlApp_WorkbookActivate(ByVal Wb As Workbook)
Dim ws As Worksheet
Application.ScreenUpdating = False
For Each ws In Wb.Worksheets
ws.Activate
ActiveWindow.Zoom = 75
'ActiveWindow.Zoom = 80
Next
Application.ScreenUpdating = True
End Sub
この回答への補足
ありがとうございました。うまくいきました。
もう一つ付け加えさせていただくなら、起動後sheet1の画面を表示させたいのですが、いかがでしょうか?現状は最終シートで起動しています。
No.4
- 回答日時:
もっと簡単に
VBE画面のVBAProjectエクスプローラーで
ThisworkbookのWorkbookのSheetActivateイベントを選び
Private Sub Workbook_SheetActivate(ByVal Sh As Object)
ActiveWindow.Zoom = 75
End Sub
でどうですか。
この回答への補足
設定したところ、1度はうまくいきました。
しかし、その後Excelを起動すると100%に戻ってしまいました。
どこか設定をいじってしまったのでしょうか?
No.5ベストアンサー
- 回答日時:
>起動後sheet1の画面を表示させたいのですが...
それならば、コードの最後に
Sheet1をアクティブにするコードを追加すればよいです。
Private Sub xlApp_WorkbookActivate(ByVal Wb As Workbook)
Dim ws As Worksheet
Application.ScreenUpdating = False
For Each ws In Wb.Worksheets
ws.Activate
ActiveWindow.Zoom = 75
'ActiveWindow.Zoom = 80
Next
Wb.Sheets(1).Activate '←追加
Application.ScreenUpdating = True
End Sub
追加した1行は
Wb.Sheets("Sheet1").Activate でも良いが、
Sheet1の名前が変更されていたりした場合に
エラーになるので、一番左のシートという意味で、
Sheets(1)という書き方にしてあります。
ですから、Sheet1が左から2番目にある場合は
当然ですがSheet1はアクティブになりません。
状況によって、使い分けて下さい。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- その他(パソコン・スマホ・電化製品) CMD等でPC操作(excel開く等)を自動化させたい 1 2023/03/15 09:53
- Excel(エクセル) Excel起動時にエラーダイアログが表示される 3 2022/07/28 19:52
- Word(ワード) Word 2016のマクロを Word 2021のWordでキー動作させたい 3 2023/04/12 16:14
- ノートパソコン EXCEL のドキュメントの回復について 2 2023/03/19 17:16
- Visual Basic(VBA) VBA アドインについて お詳しい方 ご教授をお願いします。 相談事項 現在以下の対応を実施した所、 1 2022/11/02 16:53
- Excel(エクセル) 至急 Excel日付表示設定教えてください Excelの日付表示ですが、他者から送られてくるExce 6 2023/02/03 11:01
- Excel(エクセル) Excelにの以下の設定方法について教えてください! C列にデータ入力の設定をしています。(出、入を 3 2022/06/22 01:33
- Windows 7 Windows画面表示について 3 2023/04/23 11:50
- Excel(エクセル) Excel ヘルプの[ロック解除]、<c0>、</c0> の意味は何ですか? 1 2023/02/20 16:58
- Excel(エクセル) [クイックアクセスツールバー]の設定ファイルの格納場所について、 5 2023/04/21 14:43
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
Application.Runエラー(1004)
-
エクセルVBAで、ボタンの文字を...
-
エクセルのマクロボタンが編集...
-
別シートのマクロを実行する方法
-
マクロ 戻るボタンを押したらシ...
-
シート保護を掛けたまま並べ替...
-
access2010 コマンドまたはアク...
-
特定のシートだけ印刷はマクロ...
-
プロシージャが大きすぎます!
-
エクセルのマクロ
-
アクセスの更新クエリをフォームで
-
エクセル VBA SendKeys ループ...
-
今日の日付の範囲を指定して印...
-
private sub にしたらマクロが...
-
VBAでイラストの表示はできます...
-
EXCEL2010でxltmにxlsmは必要?
-
マクロで図形を一度に消去したい
-
Excel2010のステータスバーを消...
-
excelで会議室予約表の作成(マ...
-
マクロが登録できません
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
エクセルのマクロボタンが編集...
-
別シートのマクロを実行する方法
-
Access終了時にマクロまたはVBA...
-
Application.Runエラー(1004)
-
シート保護を掛けたまま並べ替...
-
エクセルVBAで、ボタンの文字を...
-
access2010 コマンドまたはアク...
-
マクロ 戻るボタンを押したらシ...
-
InputBox内の表示について
-
特定のシートだけ印刷はマクロ...
-
ExcelのVBAでDisplayalertsで警...
-
エクセル VBA SendKeys ループ...
-
マクロが登録できません
-
今日の日付の範囲を指定して印...
-
AccessでExcelファイルを印刷
-
プロシージャが大きすぎます!
-
エクセルのマクロ
-
Workbook_Openを起動時以外に呼...
-
アクセス:検索フォームボタンに...
-
特定マクロが実行されたか確認...
おすすめ情報