Excel VBA質問箱 IV

当質問箱は、有志のボランティア精神のおかげで成り立っています。
問題が解決したら、必ずお礼をしましょうね。
本サイトの基本方針をまとめました。こちら をご一読ください。

投稿種別の選択が必要です。ご注意ください。
迷惑投稿防止のため、URLの入力を制限しています。ご了承ください。


8841 / 13645 ツリー ←次へ | 前へ→

【30718】【30219】時間で実行を繰り返すには? に続いて かず 05/11/3(木) 22:39 質問[未読]
【30818】Re:【30219】時間で実行を繰り返すには? ... ni 05/11/5(土) 0:31 発言[未読]
【30825】Re:【30219】時間で実行を繰り返すには?... End 05/11/5(土) 11:59 発言[未読]
【30826】Re:【30219】時間で実行を繰り返すには?... End 05/11/5(土) 12:14 発言[未読]

【30718】【30219】時間で実行を繰り返すには? ...
質問  かず  - 05/11/3(木) 22:39 -

引用なし
パスワード
   みなさん こんにちは

【30219】時間で実行を繰り返すには? と同じ質問かもしれません。。。
みなさんのお叱りが怖いのですが、恐る恐る質問します。

A,B,C端末があり、データはD端末のエクセルグラフに反映されます。
D端末は、A,B,C端末のデータをまとめてグラフ表示するだけなので、
このファイルを”読み取り”で開いています。
”読み取り”の状態で、A,B,C端末で入力された元データを自動更新する
プログラム作成は、可能なのでしょうか?
エクセルでそこまで出来るのでしょうか?

通常、同じファイル名を開くとエラーになりますよね?オプション設定ですかね?

もし、書籍等であればメーカーや名前を教えていただけないでしょうか?

【30818】Re:【30219】時間で実行を繰り返すには?...
発言  ni  - 05/11/5(土) 0:31 -

引用なし
パスワード
   こんにちは

http://www.vbalab.net/vbaqa/c-board.cgi?cmd=one;no=30222;id=excel
でれすけさんのコードで、一定時間ごとに繰り返し処理できますよ。

処理する内容は、
  '----------------------------------------------------
    Cells(1, 1).NumberFormatLocal = "hh:mm:ss"
    Cells(1, 1).Value = Now()
  '----------------------------------------------------
ここに書くか、別プロシージャにして、ここから呼び出すことが出来ます。

でも、処理内容からすると、VBAを使わずに、データ>外部データの取り込み
でも出来そうな気がします。
具体的なやり方は、実はやったことがないので、わかりません。
すみません。

【30825】Re:【30219】時間で実行を繰り返すには?...
発言  End  - 05/11/5(土) 11:59 -

引用なし
パスワード
   こんにちは。

>恐る恐る質問します。
そんなに萎縮されなくても^ ^

>”読み取り”の状態で、A,B,C端末で入力された元データを自動更新する
については、

Workbooks.Open Filename:="C:\temp\test.xls", ReadOnly:=True

で読み取り専用で開いた上で、コピーしたり値を引っぱってきたりして処理ができますね?

>通常、同じファイル名を開くとエラーになりますよね?
のところは、意味が今ひとつわかりません。
A,B,C端末でそれぞれ入力するファイルが同一ファイルなのか、
『同一の名前』の別々のファイルなのか。
『同一の名前』の別ファイルなら一度に開いて処理ができませんから
1つずつ開いて、処理、閉じて、次開く。
開く動きをみせたくないなら

Application.ScreenUpdating = False

で画面更新を制御する。
とかですかね?

前提として、読み取り専用で開く時にはデータが更新されている事。
つまり、A,B,C端末から入力されて上書き保存されていないとデータは新しくなりません。

また、データ量が少ないなら、外部参照式でデータをセットすれば、開く必要はありません。
その時に、一定の時間ごとにデータを更新したいなら

ThisWorkbook.UpdateLink Name:="C:\temp\test.xls" 'リンク元ファイルをフルパス指定

とすれば更新されます。

他サイトですが、外部データの取り込みも含めて、丁度よいサンプルがあったのでリンク貼っておきます。

http://excelfactory.net/excelboard/exgeneral/excel.cgi?mode=all&namber=54078&rev=0

#もしかして、A,B,C,D端末全て同一ファイルの操作であれば話は変わってきます。

【30826】Re:【30219】時間で実行を繰り返すには?...
発言  End  - 05/11/5(土) 12:14 -

引用なし
パスワード
   追記すみません。外部参照式についてはリンク先の例はわかりにくいですね。
熟読してませんでした。
サンプルだとVLOOKUP式が使われていますが、アドレスが固定なら

='C:\temp\[test.xls]Sheet1'!A1

必要なセルにコピー。

>データ量が少ないなら
前提です。

8841 / 13645 ツリー ←次へ | 前へ→
ページ:  ┃  記事番号:
2610219
(SS)C-BOARD v3.8 is Free