MS ACCESS:VBAの参照設定を自動で付け替える
をテンプレートにして作成
[
Front page
] [
Page list
|
Search
|
Recent changes
|
RSS of recent changes
]
Start:
分散開発しにくいアクセスで共通モジュールをまとめとくのに...
引数にはmdb, adpのファイルを渡す。すると、そのファイルが...
/*
* MDB, ADPのアクセスファイルへの参照設定を付け替える。
* 参照設定に拡張子が.mdb、adp、.mdaの参照先がある場合に、
* 引数で渡されたアクセスファイルと同一のディレクトリ中
* にあるものとして、その参照設定を付け替える。
*/
var fso = new ActiveXObject("Scripting.FileSystemObjec...
var app = new ActiveXObject("Access.Application");
var args = WScript.Arguments;
app.Visible = false;
for (var i = 0; i<args.length; i++) {
rereference(args.item(i));
}
app.Quit();
app = null;
try {
WScript.echo("done. hit any key...");
WScript.StdIn.ReadLine();
} catch (e) {}
WScript.Quit();
function rereference (file) {
var file = fso.GetAbsolutePathName(file);
WScript.echo(file);
WScript.echo("======================================...
try {
app.OpenCurrentDatabase(file);
app.Visible = false;
} catch (e) {
WScript.echo(e.description + "\n");
return;
}
for (var i = 1; i <= app.References.Count; i++) {
var ref = app.References.Item(i);
if (ref.BuiltIn == false && ref.Kind == 1) {
var refpath = ref.FullPath;
var filename = fso.GetFileName(refpath);
var parentpath = fso.GetParentFolderName(fil...
var newpath = fso.BuildPath(parentpath, file...
if (newpath != refpath) {
try {
app.References.Remove(ref);
var newref = app.References.AddFromFile(...
} catch (e) {
WScript.echo(e.description);
break;
}
WScript.echo(newpath);
} else {
WScript.echo(ref.FullPath);
}
} else {
WScript.echo(ref.FullPath);
}
}
app.CloseCurrentDatabase();
WScript.echo();
}
----
[[CategoryAccess]]
End:
分散開発しにくいアクセスで共通モジュールをまとめとくのに...
引数にはmdb, adpのファイルを渡す。すると、そのファイルが...
/*
* MDB, ADPのアクセスファイルへの参照設定を付け替える。
* 参照設定に拡張子が.mdb、adp、.mdaの参照先がある場合に、
* 引数で渡されたアクセスファイルと同一のディレクトリ中
* にあるものとして、その参照設定を付け替える。
*/
var fso = new ActiveXObject("Scripting.FileSystemObjec...
var app = new ActiveXObject("Access.Application");
var args = WScript.Arguments;
app.Visible = false;
for (var i = 0; i<args.length; i++) {
rereference(args.item(i));
}
app.Quit();
app = null;
try {
WScript.echo("done. hit any key...");
WScript.StdIn.ReadLine();
} catch (e) {}
WScript.Quit();
function rereference (file) {
var file = fso.GetAbsolutePathName(file);
WScript.echo(file);
WScript.echo("======================================...
try {
app.OpenCurrentDatabase(file);
app.Visible = false;
} catch (e) {
WScript.echo(e.description + "\n");
return;
}
for (var i = 1; i <= app.References.Count; i++) {
var ref = app.References.Item(i);
if (ref.BuiltIn == false && ref.Kind == 1) {
var refpath = ref.FullPath;
var filename = fso.GetFileName(refpath);
var parentpath = fso.GetParentFolderName(fil...
var newpath = fso.BuildPath(parentpath, file...
if (newpath != refpath) {
try {
app.References.Remove(ref);
var newref = app.References.AddFromFile(...
} catch (e) {
WScript.echo(e.description);
break;
}
WScript.echo(newpath);
} else {
WScript.echo(ref.FullPath);
}
} else {
WScript.echo(ref.FullPath);
}
}
app.CloseCurrentDatabase();
WScript.echo();
}
----
[[CategoryAccess]]
Page:
HTML convert time: 0.002 sec.