アクセス 既にファイルが開いているのなら開かない(二重起動防止)とするには?
自分なりにコードを考えてみたのですが
Sub Sample()
Dim acApp As Access.Application
Set acApp = CreateObject("Access.Application")
acApp.OpenCurrentDatabase "C:\test.accdb"
'該当のファイルが開いてないのなら、
If acApp.ReadOnly = False Then
acApp.Visible = True
acApp.UserControl = True
End If
End Sub
これだと、.ReadOnlyがコンパイルエラーになります。
どうやらReadOnlyはアクセスには用意されてない用語のようです。
このような場合どうすればいいでしょう?
No.1ベストアンサー
- 回答日時:
Accessファイルがローカルにあるのなら
ファイルを開けば拡張子が
accdb → laccdb
mdb → ldb
のファイルが作成されますので、Dir 関数で調べるのが一番簡単です。
ただし、排他モードで開いた場合は上記ロック情報のファイルは作成されません。
また、Accessが異常終了した場合には上記ファイルは残ったままになることも有り。
別案としては
Dim Ac as object
set ac=getobject("C:\test.accdb").application
・・・以下省略
などもありますが、Accessを前面に持ってくる必要があったりします。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Visual Basic(VBA) VBAでファイルを開くプログラムがエラーです 2 2023/02/21 16:56
- Excel(エクセル) 2つのVBAを一緒にしたら機能しなくなりました(エクセル) 7 2022/06/02 12:41
- Excel(エクセル) フォルダ内のワードファイルをPDFに一括変換するVBA 3 2023/06/09 16:51
- その他(プログラミング・Web制作) VBSでExcelファイル起動時、重複しても開くのを止めたい 1 2022/10/01 23:20
- Visual Basic(VBA) フォルダの場所を可変にしたいです(マクロ) 4 2023/05/11 10:00
- Visual Basic(VBA) あるフォルダーのファイルを違う親フォルダーのサブフォルダーに移したい 11 2023/02/15 19:00
- Visual Basic(VBA) エクセルのマクロについて教えてください。 4 2023/07/03 09:11
- Visual Basic(VBA) エクセルのマクロについて教えてください。 3 2023/02/22 08:53
- Visual Basic(VBA) InputBoxでキャンセルボタンを押したらファイル自体を閉じたい 3 2022/07/23 17:52
- Visual Basic(VBA) 動かなくなってしまった古いVBAを動くようにしたい 8 2022/09/20 13:57
このQ&Aを見た人はこんなQ&Aも見ています
-
「環境が人を育てる」って本当?環境によって人格や生き方は本当に変わるのか
環境が人生に与える影響は実際どれほどのものなのか、専門家の田宮由美さんに伺った。
-
Accessで二重起動できないようにしたい
Access(アクセス)
-
VBAで二重起動を防止したいのですが、
その他(Microsoft Office)
-
mdbファイルの2重起動は可能でしょうか?
Word(ワード)
-
-
4
EXCELのマクロの重複起動の禁止
Excel(エクセル)
-
5
エクセルの二重起動をやめたい
Visual Basic(VBA)
-
6
アクセスVBAで既に開いているエクセルを閉じたい
Yahoo!ショッピング
-
7
Accessのマクロでモジュールを実行させたい。
Access(アクセス)
-
8
VBAで既に開いている別アプリケーションのオブジェクトを得る
Visual Basic(VBA)
-
9
別のAccessファイルのフォームを開くには
Access(アクセス)
-
10
VBでファイルが開かれているかどうかを確認したい
Visual Basic(VBA)
-
11
ACCESS──メインフォームでサブフォームのレコード件数をカウントしたい
Access(アクセス)
-
12
起動時のフォームの大きさ?
Access(アクセス)
-
13
アクセスVBAのMe!と[ ]
Access(アクセス)
-
14
アクセスで数値型のフィールドにNullをいれたい
その他(データベース)
-
15
Access サブフォームでの選択行の取得
その他(データベース)
-
16
クエリ実行結果0件の場合のフォーム展開中止とメッセージ表示
Access(アクセス)
-
17
アクセスで#エラーを表示させない方法は?
Access(アクセス)
-
18
Accessで「誰々が使用中です」と表示するには
Access(アクセス)
-
19
AccessVBA RecordSourceのリセットについて
Access(アクセス)
-
20
どこにもフォーカスを当てたくない
Access(アクセス)
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
.NETアプリを作ったときの .man...
-
アクセス 壊れた? 「ファイ...
-
VBSが起動しない
-
Latexで図番号だけを「図1.1」...
-
公文書のxmlファイルの開き方が...
-
C言語---ファイルに出力したデ...
-
Seasar2のdiconファイルの読み方
-
#include <Windows.h>というヘ...
-
JSPが表示されない
-
reaper音声ファイルについて
-
コマンドプロンプトで作成日時...
-
jarファイル
-
バッチ処理で追記コピーしたい
-
CRCが一致する確率
-
vbsにてショートカットが存在す...
-
ファイル名にドットを使ったフ...
-
exeファイルの中身を見る方法は...
-
【VBA】EXCELブックを開かずに...
-
iniファイル
-
エクセルファイルが複数同時に...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
アクセス 壊れた? 「ファイ...
-
C#でログファイルにファイルパ...
-
binファイルを解凍したいの...
-
#include <Windows.h>というヘ...
-
Latexで図番号だけを「図1.1」...
-
.NETアプリを作ったときの .man...
-
exeファイルの中身を見る方法は...
-
C言語---ファイルに出力したデ...
-
CSSを1ページに1枚作るのって変...
-
jarファイル
-
コマンドプロンプトで、指定し...
-
自分で作成した重要ファイルを...
-
コマンドプロンプトで作成日時...
-
バッチ処理で追記コピーしたい
-
ファイルが開かれているかどう...
-
VBSが起動しない
-
公文書のxmlファイルの開き方が...
-
監視ツールを入れさせられまし...
-
Seasar2のdiconファイルの読み方
-
ファイル名にドットを使ったフ...
おすすめ情報