hatena
hatena
2020/07/15 (水) 13:14:19
2つのVBSで異なるデータベースファイルを開くという運用がしたことがなかったので、簡単なデータベースファイルを2つ、それぞれようのVBAを作成して、実験してみました。
一つ目のデータベースファイルをVBSから開いて、別のアプリをアクティブにしてから、2つ目のデータベースファイルをVBSから開いても特に問題なく起動できました。
現状の2つのVBSファイルの名前とコードを提示してもらえますか。原因がわかるかも知れません。
通報 ...
一つのデータベースファイルをタスクバーに最小化すると、症状がでるのを確認しました。
ちょっと解決策はわかりませんね。
複数起動したい場合は、VBSではなく、VB.Net か Accdb で同様の機能を作成する方向で検討したほうかいいかもしれません。
テスト等、色々ありがとうございます。
お手数をおかけして、すみません。
やはりタスクバーに入れるとダメなんですね…
社内で基幹システムの補助ソフトとして、accessを使用しています。
その為なのか、会社は新しいaccessを購入してくれないようです。それで2003を使用している状態です。
書くのを忘れてましたが、基本的に私のpc以外はランタイム環境です。
VB.Net…勉強してみます。ソフトが入っていないかもしれませんが、visual studio communityからダウンロードしてみます(色々あって少々戸惑いながらやっていますが)
2003なら、MDBファイルを作成してそこから、DAOで更新テーブルをチェックして更新があったら FileCopy、Shell関数でMDBファイルを開いて、自分自身を閉じる、というVBAコードを起動時フォームに記述するという設計にするのが簡単かと。
ありがとうございます。
元々私の作り方がいけなかったのか、
元データがあるmdbが2種類あります。
それはデータ量が多かったので、一定の期間で区切ったものです。比較的最近のものが①、過去のものが②とします。
元データ①の片方には毎月数万件追加されます。
フロントエンドのmdbは、社員IDでログインすると、データ追加時に所属拠点の分の一定テーブルデータをコピーしてくるようにしています。
期間外の過去の時は②からコピーしています。
ただし、年度更新の時や何か機能を追加した時はVBAを書き換えて、空のフロントエンドmdbを置いて、access自体をしてコピーさせています。
ここで使っているVBSをmdbで、という事ですよね?VBSを2個使用していたので、起動用のmdbも2個で、32bitと64bitは気にしなくてもいい、という事でましょうか?
ちなみに以前はフロントエンドのmdbをいちいち配布していたのですが、どうにも差し替えを忘れる方がいて、強制コピーしてくるように、こちらのVBSにたどり着いた次第です。
会社のpcからはこの掲示板に繋がらないので、ファイルを送れません(自分の携帯から見ています)見て頂く事も出来ないので、うまく伝わればいいのですが…長々とすみません。