- 締切済み
ある列のリアルタイム数値を3分毎に列をずらしながら記録するEXCELマクロを作りたい
EXECL2002 SP3を使っています。 B2からB99まで数式が入力されています。 この数式の結果はリアルタイムで変わります。 このリアルタイムデータを、 記録するマクロを作成したいと考えています。 9時1分から20時1分まで3分毎にデータを取得し、 C列、D列、E列、と列をずらしながら記録していきます。 以下のようなイメージになります。 ☆数式の状態 A B 1 =now 2 東京 =tokyo.temperature 3 千葉 =kanagawa.temperature 4 埼玉 =saitama.temperature ☆9時1分のシートの状態 A B C 1 9:01 9:01 2 東京 11.5 11.5 3 千葉 11.9 11.9 4 埼玉 10.8 10.8 ☆9時4分のシートの状態 A B C D 1 9:04 9:01 9:04 2 東京 11.6 11.5 11.6 3 千葉 12.1 11.9 12.1 4 埼玉 11.0 10.8 11.0 ☆9時7分のシートの状態 A B C D E 1 9:07 9:01 9:04 9:07 2 東京 11.8 11.5 11.6 11.8 3 千葉 12.4 11.9 12.1 12.4 4 埼玉 11.1 10.8 11.0 11.1 上記の作業を実現できるマクロを 教えていただけませんでしょうか。 よろしくお願いいたします。
- みんなの回答 (3)
- 専門家の回答
みんなの回答
- hige_082
- ベストアンサー率50% (379/747)
- imogasi
- ベストアンサー率27% (4737/17070)
- hallo-2007
- ベストアンサー率41% (888/2115)
補足
ありがとうございます。マクロの記録を使って、以下の検証マクロを作ってみました。 ただこれでは逆おくりになりますので、他の方の意見も参考にして、手を加えてみます。 Private Sub Macro1() Range("B2:B96").Select Selection.Copy Range("C2").Select Selection.Insert Shift:=xlToRight Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _ :=False, Transpose:=False Columns("C:C").Select Application.CutCopyMode = False nextTime = Now() + TimeValue("00:03:00") Application.OnTime nextTime, "Macro1" End Sub