- 締切済み
Excel VBAにてシート移動について
初心者なのでわかりやすくお願いいたします、 Excel でワークシートを次のシート移動したときににマクロの記述にてsheet(1)からsheet(2)に移るときにはこのように数字を書けばよろしいのですが、ある任意のシートから次シートに移動したいときには任意のシート、次のシートはどのように記述すればいいかわかりません、どなたかお教えください ルークといいます宜しくお願いいたします。
- みんなの回答 (3)
- 専門家の回答
みんなの回答
- imogasi
- ベストアンサー率27% (4737/17069)
シートタブの見えている順序番号は「インデックス」というものでとらえられる Sub test02() MsgBox Worksheets("Sheet2").Index MsgBox Worksheets(3).Name End Sub を色々中身をかえてやってみること。感じがつかめるだろう。 ーー Sheet1、Sheet2、Sheet3、Sheet4の例と順序で下記コードの実行をやってみて シートの捕らえ方は、 (1)名前で (2)インデックス番号で のほかに .Nextや.Previous が゛有り Sub test03() MsgBox Worksheets("Sheet2").Next.Name MsgBox Worksheets("Sheet2").Next.Next.Name End Sub をやってみて。 おなじみのActivesheetという指定の仕方も在る。 ほかには無いように思うが。 ーー これらは、VBAの「いろは」の「い」に学ぶべきことだよ。エクセルのオブジェクトはブックー>シートー>Range,セルの構成でそのように見てくると、学習の早期に知るべきことだ。
- doara_2011
- ベストアンサー率59% (25/42)
>ある任意のシートから次シートに移動したいときには WorksheetオブジェクトのNextプロパティを使用します。 例:Activesheet.Next.Select ちなみに前のシートへの移動はPreviousプロパティ。
- hallo-2007
- ベストアンサー率41% (888/2115)
>ある任意のシートから次シートに移動したいときには任意のシート、次のシートはどのように記述すればいいかわかりません 意味を取り違えていなければ Sub ボタン1_Click() MsgBox ActiveSheet.Index Sheets(ActiveSheet.Index + 1).Select End Sub 今のシートのシート番号をとりあえず表示 次のシート番号へ移動 といったような感じです。
お礼
imogasiさん ありがとうございました。 VBAは勉強をはじめたばかりなので… より学習していきます。 ありがとうございます ルーク