• ベストアンサー

シートを動かす(切り替える)方法

エクセルを使って簡単なアニメを作成しようと思います。 そこで下の画像のように、スピードの部分に適当な数値を入れて スタートをクリックすると、Sheet1~Sheet8まで自動的にコマ送りといえばいいのでしょうか動作をして 目次のシートに戻るVBAが分かれば教えていただきたく質問しました。 分かる方からのアドバイスをいただけるとありがたいです。よろしくお願いします。

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

  • ベストアンサー
  • mt2008
  • ベストアンサー率52% (885/1701)
回答No.1

シートを切り替えるだけならこんな感じでどうでしょう。 目次シートのC5セルには切り替え時間をミリ秒で入れておいてください(とりあえず500=0.5秒ぐらいで試してみて下さい)。 Public Declare Sub Sleep Lib "kernel32" (ByVal dwMilliseconds As Long) Sub Sample()   nSec = Worksheets("目次").Range("C5")   For i = 1 To 8     Sheets("Sheet" & i).Select     Sleep nSec   Next i   Sheets("目次").Select End Sub

jugyou1
質問者

お礼

シートの切り替えが実行されているような気がしますがアニメのような感じで動かないなあと思って返信させていただきました。 プログラム自体が間違っていないような気がしますので別に原因で考えられるものがあれば教えていただければと思ってコメントさせていただきました。 アドバイスお願いできると幸いです。

その他の回答 (2)

  • mt2008
  • ベストアンサー率52% (885/1701)
回答No.3

> 実行するとエクセル画面の左下のシート名が表示されているタブのようなものは動くのですが、それに各シートが連動して動作しないということが起きています。(「目次」シートが表示されたままということです) 環境の違いでしょうかね? 当方、Excel2010で動作確認しています。 コードを以下のように変えるとどうでしょう。 Sheets("Sheet" & i).Select ↓ Sheets("Sheet" & i).Active

jugyou1
質問者

お礼

回答ありがとうございます。うまくいかないです。ということは、パソコンがおかしそうですね・・・

  • mt2008
  • ベストアンサー率52% (885/1701)
回答No.2

> シートの切り替えが実行されているような気がしますがアニメのような感じで動かないなあと思って返信させていただきました。 ・表示シートの切り替えが行われていると断言できないと言うのはどんな状態なのでしょうか? ・「アニメの様な感じ」が何を意味しているのか解りません。切り替え時間が長すぎてスムーズではないという事なら目次シートC5セルの切り替え時間を短くしてみて下さい。

jugyou1
質問者

お礼

回答ありがとうございます。 ボタンはActiveXコントロールボタンを使いモジュールの部分にコード入力を行いました。 実行するとエクセル画面の左下のシート名が表示されているタブのようなものは動くのですが、それに各シートが連動して動作しないということが起きています。(「目次」シートが表示されたままということです) これはパソコンの問題なのかなあとも思ってしまいます。アドバイスいただけると幸いです。 最近

関連するQ&A

  • エクセルシートの塗りつぶしをVBAでやるには?

    エクセルのセル塗りつぶしについて(VBA) いつもお世話になっています。 エクセルシートで、任意のセルに数値を入力したとき、入力したセルから右側に向けて、その数値分、自動で塗りつぶすようにしたいのですが、どのようにすれば良いのでしょうか? 色は何でも構いません。 画像添付します。

  • エクセル 非表示のシートをハイパーリンクで表示できますか?

    こんにちは。 エクセルのブック内で、目次シートが1枚、詳細シートが3枚あります。目次の中の項目をクリックすると各詳細シートが開くようにハイパーリンクを設定してあります。 このままでも使えますが、詳細シート3枚を非表示にするとハイパーリンクが機能せず詳細シートが出てきません。 これはエクセルの仕様なんでしょうか?それとも設定の仕方が悪いんでしょうか? ちなみに友人が作ったVBAで設定したらうまくいきました。VBA以外に設定できる方法があるのであれば教えて頂ければ幸いです。 よろしくお願い致します。

  • Excel2003 VBA6.0です シートの整理をしたい

    エクセルのファイルにシートの数が大量になってきました。 どうしても同じファイルにしておきたいのですが、開くたびに、シートを探す動作が発生して面倒です。 それで先頭のシートを目次にして、開くたびに必ず目次のシートが表示され、かつ目次のリストの一覧から当該セル(ボタン)をクリックすると、目的のシートにジャンプするようにセルを設定したいのですが、マクロまたは関数を使う方法などで教えてください。 1.開くたびに必ず目次のシートが表示されるようにする。または、閉じるときに、先頭のシートにジャンプして閉じるようにする。 2.目次のシートのシートリストをクリックして、当該シートを表示させる。 以上2点です。その他アドバイスがありましたらお願いします。

  • エクセルでシート同士のリンクができません。

    エクセルでシート同士のリンクができません。 ワークシートにリンク設定をしていますが基本のシートを変更しても 他のワークシートが自動変更しません。しかし 設定してあるセルをダブルクリックすると基本シートの数値が表示されます。 通常のように自動にて変更するようにするにはどうしたらよいのでしょうか??

  • 1動作で小さいシートの選択画面が出せる方法

    Excelに詳しい方よろしくお願いします。 シートの数が多いときだけに左下角の見出しをスクロールするボタンのところを右クリックすると一番下にシートの選択が出来ます。そこを選択しますと小さいシートの選択が出てきます。マクロやショートカットキーの1動作で小さいシートの選択を出せる方法はないでしょうか?

  • Excelでシート1の数値を2に入れたいです

    Excelの勉強がてら家計簿を作っているのですが、 Excelでシート1に入れた数値を、シート2に自動で入力できるようにしたいです。 言葉でうまく説明できないので、画像を添付します。 (ご不明な点がありましたら、回答の際にお尋ね下さい。補足いたします) やる方法か、解説しているサイトなど教えていただけますと幸いです。 よろしくお願いいたします。

  • ☆VBA:図の書式設定のリセット方法

    Excel-Sheetにコピー張付けした画像(例えばインストール画面を次々コピー張付け)を、適当なサイズに変更したが元のサイズに戻したい。 手作業ではなくVBAマクロで一括返還したいのですが難しくてわかりません。 手動ならアクティブシートの画像をマウスクリックして、 [サイズとプロパティ]⇒[サイズ]⇒[原型のサイズ]⇒[リセット]の手順ですが、 VBAマクロで実行するにはどの様な記述をすればよいか教えて下さい。 宜しくお願いします。

  • ワークシートとコンボボックスを共存させたい

    エクセルのVBAで、ワークシートの左側にコンボボックスを設置することはできますか? コンボボックスにA、B、Cとあるとすると、Aをクリックしたら右側にAのsheetが開くようにしたいのですが。 もしくは、VB2005で、フレームの左右、または同じフォームの中で左側にコンボボックス、右側にワークシートを設置する方法はありますか? どちらか可能な方法でプログラムを組み、ワークシート上にはユーザーが数値を打ち込んで自動計算できるようにしたいのですが。 よろしくお願いします。

  • EXCEL VBA 別シートへデータ集計

    お世話になります。 EXCEL VBAを使って下記のことを実現したいです。 [やりたいこと] [データ]シートに社員情報が4人分入っています。(本当は可変です) [データ]シートに"集計"というボタンを作ってクリックするとVBAが動いて[集計]という シートにデータを集計したいのです。この[集計]シートのフォームが少し変わっていて一人に つき3行使用します。次の人はまた3行、また次の人は3行と繰り返していきたいのです。 上記やりたい事を画像にもしてみました。 上記動作を実現するVBAコードをどなたかご教授いただけませんでしょうか? 何卒よろしくお願い致します。 環境 EXCEL 2017 Win7

  • エクセルのSheet削除について

    お尋ねします。 VBAでマクロを作成中に画像のように「Sheet15」というのが作成されました。 アイコンは「ThisWorkBook」と同じです。 右クリックして「オブジェクトの表示」を選んでも他のシートが表示されます。 エクセルの画面上にはシートとして表示されていません。 削除したいのですが、 右クリックで表示されるメニューの「Sheet15の解放」はグレーアウトして押せません。 削除する方法があれば教えてください。 マクロでの削除でも結構です。 よろしくお願いします。

専門家に質問してみよう