• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:ExcelのVBAについての質問です。)

ExcelのVBAについての質問

このQ&Aのポイント
  • ExcelのVBAを使用して、計測機器からのデータを特定の時間内に複数回ループさせる方法について質問です。
  • 質問者は、計測機器からシート1にデータが書き込まれている状況であり、特定の時間内に複数回ループされるVBAプログラムを作成したいと考えています。
  • 具体的なソースコードが提示されており、最終行の調査やデータのコピー方法が記述されています。しかし、特定の時間内にプログラムをループさせる方法についての記述はされていません。

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

  • ベストアンサー
回答No.2

いまいち質問の具体的な意味を掴みにくいので、見当違いの答えになるかも知れませんが…。 「ある条件が続く間」、もしくは「ある条件になるまで」ループを続けるのであれば、「Do Loopステートメント」を使ってやるのが一般的かと思います。「Do Loopステートメント」の「条件式(VBAヘルプには【condition】と書いてます」に質問者さんの言う「特定の時間」の条件を入れれば良いかと。もちろん条件式にはVBAの論理演算子が使えますので、繰り返し回数の制限もできます。 もっと具体的な繰り返しの条件を教えていただければ、他の方からも、もっと具体的な解説をしていただけるのではないかと思います。

cyurai
質問者

補足

丁寧な回答ありがとうございます。 具体的に言うと計測しているものの監視盤を作りたいので、例えばsheet1に計測していてどんどん書き込まれている数値を、sheet3に作った監視盤に最新の数値のみを取りたいので質問に乗せたプログラムを例えば1時間に100回繰り替えせるようにするにはどうすればいいのでしょうか?

すると、全ての回答が全文表示されます。

その他の回答 (1)

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

文系の課題では余り考えない課題(エクセルは基本的にデータがシートに全部揃って処理をする)ですが 過去の質問・回答に エクセルのあるセルA1に常に自動更新される値があります。これを 1分ごとに自動で特定の列に順に出力していきたい Sub test01() Cells(Rows.Count, "B").End(xlUp).Offset(1).Value = Range("A1") Application.OnTime Now + TimeValue("00:00:10"), "test01" End Sub このタイムインターバルの部分を質問者の場合に修正し、test1(上記Sub・・・ End Sub)の第1行目の前に、本質問のやりたいことを追加してやってみてどうでしょうか。 また上記第1行目は、各々の瞬時の状態を、上書きしないで保存するために、書きだし位置のセルをづらすために必要と思います。 再帰的な処理になっています。 時間到来が処理のきっかけになるという、普通のマウスクリックやファイルOpenなどのイベントと違った タイプの珍しいものです。

すると、全ての回答が全文表示されます。

関連するQ&A