Excel VBA質問箱 IV

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

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


13172 / 13644 ツリー ←次へ | 前へ→

【6661】LAN端末でのリアル新 ゆきち 03/7/20(日) 13:06 質問
【6662】Re:LAN端末でのリアル新 よろずや 03/7/20(日) 23:27 回答
【6665】Re:LAN端末でのリアル新 ゆきち 03/7/21(月) 22:13 お礼
【6686】Re:LAN端末でのリアル新 よろずや 03/7/23(水) 17:57 回答
【6694】Re:LAN端末でのリアル更新 ゆきち 03/7/24(木) 23:15 お礼

【6661】LAN端末でのリアル新
質問  ゆきち  - 03/7/20(日) 13:06 -

引用なし
パスワード
   初めまして
LANで構築しているAとBの端末が同じファイルを開いているとします
(一方は参照で)

入力側Aでデータを更新したら参照側Bの画面もリアルに更新とういのは
できるでしょうか。
エクセルかアクセスで作りたいのですが

できるかわからないのですがどなたか教えてください。

【6662】Re:LAN端末でのリアル新
回答  よろずや  - 03/7/20(日) 23:27 -

引用なし
パスワード
   >入力側Aでデータを更新したら参照側Bの画面もリアルに更新とういのは
>できるでしょうか。
>エクセルかアクセスで作りたいのですが

完全なリアルは考えない方がよろしいと思います。
一定周期でフォルダ内のデータを監視して...ってな感じになるでしょう。
気を付けなければならないのは、Excelではセル編集中はマクロが動かない
ということです。

【6665】Re:LAN端末でのリアル新
お礼  ゆきち  - 03/7/21(月) 22:13 -

引用なし
パスワード
   よろずや さん  ありがとうございました。

>
>完全なリアルは考えない方がよろしいと思います。
>一定周期でフォルダ内のデータを監視して...ってな感じになるでしょう。
>気を付けなければならないのは、Excelではセル編集中はマクロが動かない
>ということです。

私の頭の中での構想も同じように考えていました。ただ、エクセルで実行できるか
雑誌等を見ても探せませんでした。
あつかましいのですが、できましたらその部分の一例を教えてほしいのですが
よろしくおねがいします。

【6686】Re:LAN端末でのリアル新
回答  よろずや  - 03/7/23(水) 17:57 -

引用なし
パスワード
   >あつかましいのですが、できましたらその部分の一例を教えてほしいのですが
>よろしくおねがいします。

標準モジュールに
−−−−−−−−−−−−−−−−−−−−−−−−−−−
Option Explicit
Public oldtime As Date

Public Sub Auto_Open()
  If Not ThisWorkbook.ReadOnly Then
    On Error Resume Next
    If Not ThisWorkbook.Saved Then
      Application.EnableEvents = False
      ThisWorkbook.Save
      Application.EnableEvents = True
    End If
    ThisWorkbook.ChangeFileAccess Mode:=xlReadOnly
  End If
  oldtime = FileDateTime(ThisWorkbook.FullName)
  Application.OnTime Now, "updchk"
End Sub

Public Sub updchk()
Dim newtime As Date
  newtime = FileDateTime(ThisWorkbook.FullName)
  If oldtime <> newtime Or Not ThisWorkbook.Saved Then
    On Error Resume Next
    If ThisWorkbook.ReadOnly Then
      Application.OnTime Now, "Auto_Open"
      ThisWorkbook.ChangeFileAccess Mode:=xlReadWrite
      Exit Sub
    End If
    oldtime = newtime
  End If
  Application.OnTime Now + TimeSerial(0, 0, 5), "updchk"
End Sub
−−−−−−−−−−−−−−−−−−−−−−−−−−−
ってな感じですが、うまくないですね。
やはり、プログラムとデータは別ファイルにすべきかと。

【6694】Re:LAN端末でのリアル更新
お礼  ゆきち  - 03/7/24(木) 23:15 -

引用なし
パスワード
   よろずやさん

ありがとうございました。
参考にさせていただき無事更新できました。

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