• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:エクセルシートのカーソル位置を先頭にそろえて見栄え良く保存したい。)

エクセルシートのカーソル位置を先頭にそろえる方法

このQ&Aのポイント
  • エクセルシートのカーソル位置を先頭にそろえて見栄え良く保存したい。表示されている全シートについてカーソル位置を先頭(左上隅)にし、スクロールバーもそこに戻し、表示されている1番目のシートを選択した状態にする方法を知りたい。
  • エクセルシートのカーソル位置を先頭にそろえる方法が知りたい。全シートについてカーソル位置を先頭にするだけでなく、スクロールバーも先頭に戻し、1番目のシートを選択した状態にする方法を教えてください。
  • エクセルシートのカーソル位置を先頭にそろえて見栄え良く保存したい。全シートについてカーソル位置を先頭にし、スクロールバーも先頭に戻し、表示されている1番目のシートを選択した状態にする方法を教えてください。もっと効率的な方法があれば知りたいです。

質問者が選んだベストアンサー

  • ベストアンサー
  • imogasi
  • ベストアンサー率27% (4737/17069)
回答No.2

#1です。条件の見落としがあったようです。 グラフシートや非表示シートが有るとは。 Sub test01() Dim sh As Worksheet For Each sh In Worksheets MsgBox sh.Name & sh.Visible If sh.Visible = True Then sh.Activate sh.Range("A1").Select End If Next Sheets(1).Activate End Sub グラフシートの場合は判れば考えてみます。 >1枚のブックに表示・非表示にかかわらず1枚以上のシートがある。 これはエクセルの条件では無かったですか。ブックのシート数を0には出来ない。

tmssandan
質問者

お礼

ありがとうございました。 Sheets(1).Activate これで解決したようです。とりあえず実用上問題ないようなので。

その他の回答 (2)

  • hige_082
  • ベストアンサー率50% (379/747)
回答No.3

[やりたいこと]をやると こんな感じ? Sub Macro1() Dim sh As Worksheet For Each sh In Worksheets If sh.Visible = True Then Application.Goto reference:=sh.Range("a1"), scroll:=True Else sh.Visible = True Application.Goto reference:=sh.Range("a1"), scroll:=True sh.Visible = False End If Next Worksheets(1).Select End Sub

tmssandan
質問者

お礼

回答ありがとうございました。 Worksheets(1).Select ・表示されている1番目のシートがグラフだった場合に選択されない。 ・表示されている1番目のシートの前に非表示のシートがあるとエラーになる。

  • imogasi
  • ベストアンサー率27% (4737/17069)
回答No.1

複雑なやり方を使わずとも 標準モジュールに Sub test01() Dim sh As Worksheet For Each sh In Worksheets 'MsgBox sh.Name sh.Select Range("A1").Activate Next End Sub ーーーーーーーー 実行後、どれもシートのセルをクリックしないよう気をつけて、シートタブの法をクリックして、確認のこと。

tmssandan
質問者

お礼

回答ありがとうございました。 sh.Select これでは、非表示のシートがあるとエラーになります。グラフでエラーが出ないのは良いんですけど。 ・表示されている1番目のシートを選択した状態にする。 これが上手く伝わらなかったようです。失礼しました。 1番目のシートとは、1番左のシートという意味です。 補足 使用しているのはExcel2003です。 本日気づいたのですが、グラフはスクロールバーを動かして保存しても次に開いた時にそのスクロールバーの位置が記憶されないようです。なのでグラフに関しては特に「カーソル位置を先頭にする」という動作は必要ではないです。オプション設定に依存するものも多いようですし。

tmssandan
質問者

補足

もっと上手い人の解決法を知りたく投稿します。何卒よろしくお願いいたします。

関連するQ&A