ACCESS VBAで別のACCESS(mdb)を起動できますか?

その場合 呼び出し元の
ACCESSは、終了しますか?

できれば終了したほうが良いです。

教えてください。

よろしくお願いします。

このQ&Aに関連する最新のQ&A

A 回答 (2件)

>ACCESS VBAで別のACCESS(mdb)を起動できますか?


ADOを使って読み書きは出来ます。

>ACCESSは、終了しますか?
>できれば終了したほうが良いです。
結論から言えば無理です。
VBAは現在開いているACCESSから起動しているわけですから現在のMDBを閉じた瞬間にVBAは終了してしまいます。
VBAでなくVBを考えたほうが早いと思いますが
    • good
    • 1

Objectとしては#1さんが言われるとおり難しいでしょう。

。。

Shell 関数を使用して mdb もしくは Access を起動してはいかがでしょうか?
    • good
    • 0

このQ&Aに関連する人気のQ&A

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!

このQ&Aを見た人はこんなQ&Aも見ています

このQ&Aを見た人が検索しているワード

このQ&Aと関連する良く見られている質問

Q英語から別の外国語にアクセスするために

こんにちは。私はインドが大好きです。インドは英語が公用語になっているので、英語さえ知っていれば、何とか意思疎通はできますが、インドのことをもっとよく知るためにヒンディー語を覚えようと思います。
 ヒンディー語と言えば、英語やスペイン語と並んで地球上で約4億人の母国語になっているのに、日本ではヒンディー語の学習書は皆無に等しいです。そこで、英語からアクセスせざるをえません。しかし、英語で書かれたまた別の外国語の学習書を十分に理解できるか不安です。
 そこで、英語(または別の外国語)を土台に他の外国語を学習されたことのある方に質問です。
その為には、相当な英語力が必要だと思いますが、どのようにして英語のレベルアップされたらいいと思いますか。他にも英語を介して別の外国語、スペイン語を介してカタルーニャ語、ロシア語を介してウクライナ語、フランス語を介してクレオール語、ドイツ語を介してオランダ語などを学習された方がおられましたら、既習の外国語をベースに新しい外国語に臨む心得などを教えてください。

尚、当方の英語力は英検準1級で、英語力を十分にブラッシュアップさせてからヒンディー語に臨もうと思います。

こんにちは。私はインドが大好きです。インドは英語が公用語になっているので、英語さえ知っていれば、何とか意思疎通はできますが、インドのことをもっとよく知るためにヒンディー語を覚えようと思います。
 ヒンディー語と言えば、英語やスペイン語と並んで地球上で約4億人の母国語になっているのに、日本ではヒンディー語の学習書は皆無に等しいです。そこで、英語からアクセスせざるをえません。しかし、英語で書かれたまた別の外国語の学習書を十分に理解できるか不安です。
 そこで、英語(または別の外国...続きを読む

Aベストアンサー

英語からスペイン語にアクセスした経験があります。
(日本語も併用しました)
スペイン語からフランス語、イタリア語を覗いたこともあります。

英検準1級もあれば十分ですし、実際はそれより多少低くても問題ないでしょう。
おそらく中学3年くらいのレベルがこなせる程度でも大丈夫だと思います。
というのも、言語学習で必要なスキルはそれほど難しいものではないからです。
まず文法用語でしたら時制や品詞に関する単語を知っておくことと、
中3までの英語が日本語を介さずにわかるくらいの読解力、あとは
わからないことがあってもしばらく放置出来る包容力?と、その先に進む
勢いがあればなんとかいけます。
中にはその言語に固有の文法用語が出てくるかもしれませんが、例文の英訳と
辞書を頼りに取り組めば理解できると思います。

英検準1級や中3レベル、と書きましたが、受験に適した日本の学校の教科書とは違って
もう少し実践的に書かれていると思います。
文法書ではなく、会話で学ぶというような感じの本ならわかりやすいでしょう。

英語で書かれた英語のテキストをざっと見て、理解できれば大丈夫ではないかと思います。
また、いきなり書籍を購入するのではなくて、英語ベースのヒンディ語講座などを
利用してみても良いと思います。

東京外語大学の言語モジュールなら日本語で書かれています。
あらかじめざっと学習しておけば英語からのアクセス時の参考になると思います。
http://coelang.tufs.ac.jp/modules/index.html

英語からスペイン語にアクセスした経験があります。
(日本語も併用しました)
スペイン語からフランス語、イタリア語を覗いたこともあります。

英検準1級もあれば十分ですし、実際はそれより多少低くても問題ないでしょう。
おそらく中学3年くらいのレベルがこなせる程度でも大丈夫だと思います。
というのも、言語学習で必要なスキルはそれほど難しいものではないからです。
まず文法用語でしたら時制や品詞に関する単語を知っておくことと、
中3までの英語が日本語を介さずにわかるくらいの読解力、あとは
...続きを読む

QAccess2003VBA・MDBファイルの容量をVBAで知りたいです。

Access2003VBAで質問です。

(1)VBA実行中(自分自身)のMDBファイルの容量を、VBAで知ることはできますか?
CSVファイルを読み込む処理ですが、1.9ギガくらいで、処理をとめたいのです。

(2)VBA実行中(自分自身)のMDBファイルのディレクトリを取得する方法を教えて下さい。

(3)自分自身のMDBファイルは、最適化できませんよね。
DAOで、閉じてるMDBファイルをコピーするしかないのかな?

Aベストアンサー

1)&2)
Sub Test()
  Dim FS As Object
  Set FS = CreateObject("Scripting.FileSystemObject")
  Debug.Print "size=" & FS.getfile(CurrentProject.FullName).Size
  Debug.Print "path=" & CurrentProject.Path, "name=" & CurrentProject.Name
  Set FS = Nothing
End Sub

3)
自身を最適化する方法は色々な方が考えられています
ペン萩 さん
http://www.penhagi.com/access/tips/27_saiteki.htm
YU-TANG さん
http://x7net.com/~access/AcTipsGnrlHowToCompactCurrentMDB.html

Q会社別リストなどの「別」を英語で表現するのは

会社別取引レポートとか売上別一覧表などの「別」をどう英語で表現したらよいのか教えてください。
いちおう、DealingReports Of Each Companyとしてみたのですが...間違ってますか

Aベストアンサー

こんにちは。
業務上そのようなリストを使っていますが、
「Business deal reports by account (name)」
アカウントは私たちの会社では「顧客」という意味で使っています。
口座ではなく、取引のある各会社の事です。

もし顧客でないのであれば、
by supplier (name)
とすることも出来ます。
~ごとは大体byを使います。

売上別一覧表
これは売上別の何の一覧表かわからないので確かな事は言えませんが、
List by sales (figure/amount)
とかになるんでしょうか・・・。

QAccess2000vbaで、shell関数で起動させたExcellを終了する方法を教えてください。

Access2000vbaで、shell関数で起動させたExcellを終了する方法を教えてください。
以下のように、shell関数で、既存のExcelファイルを起動させました。
どうすれば、Excelファイルを終了できますか?
宜しくお願いします。

Dim fl_name As String

fl_name = "C:\XE2.xls"
Shell "C:\Program Files\Microsoft Office\Office\EXCEL.EXE " & fl_name, vbNormalFocus

Aベストアンサー

こんばんは。

Shell であけるのに、閉めるほうが、これじゃあ、かなりヘンですが、まあ、こんな方法があるという程度にしてください。本来は、開けるほうは、CreateObejct にするなりしたほうがよいのですが。

Private Const fl_name As String = "testa.xls"

Private Sub コマンド_Click()
Dim xlApp As Object
 On Error Resume Next
 Set xlApp = GetObject(, "Excel.Application")
 If Not xlApp Is Nothing Then
  'もし保存するなら……
  If xlApp.Workbooks(fl_name).Saved = False Then
  xlApp.Workbooks(fl_name).Save
 End If
  xlApp.Quit
 End If
End Sub

Q予備校で冬季講習のみ受けるのですが 分野別対策講座(数学や理科など) 総合講座(英語で文法読解作文全

予備校で冬季講習のみ受けるのですが

分野別対策講座(数学や理科など)
総合講座(英語で文法読解作文全部やる)
大学別対策講座(◯◯大学英語、医歯薬系数学など)
センター対策講座
オリジナル講座

で冬季講習のみでも大丈夫な講座はありますか?
河合塾か駿台予備校です。

Aベストアンサー

基本予備校の冬季講習は予備校生でない部外者でも受けられる様にカリキュラムが組まれているはずですから、冬季講習だけで大丈夫となっているのが一般的です。

QVisual Basicから起動中の特定のmdbファイルを終了したい

Visual Basicのコマンドボタンを押すことで、起動中の特定のmdbファイル(例えば C:\生徒管理\2学年.mdb)を終了したいのですが、どう記述すればよいのでしょうか?
困っています。よろしくお願いします。

Aベストアンサー

特定のmdbファイルを終了したいというのは、
あるmdbを開いているAccessを終了させたいということで
いいでしょうか?

という前提でいきます。あと、確認したのがVB6.0、Access2000なので、Accessのバージョンによっては
(特に97、95)では動かないかもしれません。

1.GetObjectで、引数で指定したファイルを開いているAccessのオブジェクトを取得します。

2.取得できたら閉じるだけ

以上です。

一応サンプルを。
Dim ac As Object

Set ac = GetObject("C:\生徒管理\2学年.mdb")
ac.DoCmd.Quit
Set ac = Nothing

DoCmd.Quitは、終了のさせ方でパラメータがありますので
詳しくはAccessのVBAのヘルプで確認してください。

Q英語を介して別の外国語を学習するために・・・・英語力の臨界点

こんにちは。英語を介して別の外国語を学習するということに関しての質問が過去にも何度かありましたが、論点を整理し、新たに質問させていただきます。

この学習の為には相当な英語力が必要ですよね。そして、ヴェー・ユプシロン・アインさんによると、そのような学習方法は非常に不合理だそうです。

“英語で書かれた別の言葉の入門書は、私たち日本人の為ではなく、英語を母語或いはそれに近い英語力を持った人々を主な対象として返済されております。従って、英語に沿った説明がされている筈です。と言うことは、日本人がと言うかどっぷり日本語に浸かったものの考え方や知識ではどうしても理解し難い場面に出くわす可能性があります。英語とドイツ語は2千年ぐらい前には同じようなと言うか極近い言語だったし、現在でも多くの共通点が見られますね。しかし、そこが落とし穴のような気がします。飽くまでも別の言葉として学ぶべきでしょう。”

私も半分は同感です。特に、和訳と訳読を中心とした古典的な学習をしてきて、とりわけ頑固な性格の人にはそうでしょう。

しかし、果たしてそうかなあと疑問に思うことが幾つかありました。

(1)英語がかなり出来る人が、英語で書かれた教材でデンマーク語やスウェーデン語を学習したら、スラッシュリーディングが非常に容易だったそうです。また、その人によると、日本語よりも英語の方が体系的に文法を知っているので、英語を起点に他の西洋の言語に訳す方がラクだそです。

(2)英語の通訳をしている人が、スペイン語を学習しようとしたが、日本人向けの学習書には文法、語法的には分かりきったことが書かれていることが多い割りに、英語とスペイン語の微妙な違いについては分かりにくかった。また、文法の説明は詳しいのに、発音に関してはそうでなかたったので、歯痒かったそうです。

(3)ラテン語を日本語で学習するのってどうなんでしょう。英語で漢文を読むのに似ているかもしれません。そもそもラテン語を学習するくらいの人は、英語だって相当出来ると思うし。

(4)中国語の普通話がある程度出来る人が、広東語を学習したら
結局、簡体字と繁体字と日本の漢字の比較ばかりに気を取られたりしないでしょうか?

ですから、一定レベルの英語力があれば、英語を介して他の外国語を学習するのは むしろ日本語を介するよりも覚えやすいと思いますが、このレベルというのは、やはりネーティブ並みの英語力が必要なので、普通の日本人には半ば無理なんでしょうか? それとも、語学の素質があり、努力すれば到達できるんでしょうか? また、その為には どうのような学習を進めればいいんでしょうか?

こんにちは。英語を介して別の外国語を学習するということに関しての質問が過去にも何度かありましたが、論点を整理し、新たに質問させていただきます。

この学習の為には相当な英語力が必要ですよね。そして、ヴェー・ユプシロン・アインさんによると、そのような学習方法は非常に不合理だそうです。

“英語で書かれた別の言葉の入門書は、私たち日本人の為ではなく、英語を母語或いはそれに近い英語力を持った人々を主な対象として返済されております。従って、英語に沿った説明がされている筈です。と言う...続きを読む

Aベストアンサー

こんにちは、時々お会いしますね^^

全てのご質問にお答えすることはできませんがいくつか述べさせていただければと思います。

私の英語力、特に文法力はネィティブどころかおそらく高校生程度もありません。
ですが、英語で外国語のリファレンスを読んでも何ら問題はありませんでした。
「○○語学」を学ぶのでなければとりたてて難しい説明も例文・単語も出てきません。

おそらくインド・ヨーロッパ語族に限るのでしょうが、私自身は英語からアクセスしたほうが直感的にわかりやすいと感じました。
何故なら語順を気にしなくてよいこと、文法や単語に共通点が多いからです。
また欧米的な感覚・物の見方と日本のそれがかなり違っているように感じるので
英語からヨーロッパ語へのアクセスの方が楽に感じるのです。
中国語や韓国語などは英語よりそれらに共通点の多い日本語からアクセスしたほうがわかりやすいでしょうね。

どのくらいの英語力が必要かというと、辞書をほとんどひかなくても意味が理解でき、
あるいは前後関係で言いたいことがわかること。といっても先に述べたように
日常的な表現・語彙ばかりですから、それほど高度な知識がいるとは思いません。
ただし英文を日本語に置き換える力ではなくて、英文を感覚的に取り込める力は要ると思います。
英文を見て「ここが形容詞、これが副詞で、ここは関係代名詞。これは○○構文だから」
などとして理解している人ですと、どんなに語彙力があっても非効率でしょう。

私はヴェー・ユプシロン・アインさんの主張に反対しませんし、そのような考え・やり方の
人がいても良いと思います。
ひとつ言うならば
「日本人がと言うかどっぷり日本語に浸かったものの考え方や知識ではどうしても理解し難い場面に出くわす可能性があります。」
というところ、たとえばどういうことがあったのかなと思います。

私自身は、外国語を学ぶということはその国の思考方法を学ぶことだと思っているので、
日本語の感覚からは理解しずらいなと思っても「そういうものなんだ」と受容します。

多少わからないところがあっても気にせず進んでいける大らかさが
必要かもしれませんね^^

こんにちは、時々お会いしますね^^

全てのご質問にお答えすることはできませんがいくつか述べさせていただければと思います。

私の英語力、特に文法力はネィティブどころかおそらく高校生程度もありません。
ですが、英語で外国語のリファレンスを読んでも何ら問題はありませんでした。
「○○語学」を学ぶのでなければとりたてて難しい説明も例文・単語も出てきません。

おそらくインド・ヨーロッパ語族に限るのでしょうが、私自身は英語からアクセスしたほうが直感的にわかりやすいと感じました。
...続きを読む

QMDBファイル起動時に、別のファイルを自動で開く方法

いつもお世話になります。
「A.mdb」を開いた時に、同じフォルダに保存されている「B.mdb」を自動的に開きたいのですが、よろしくお願いいたします。

Aベストアンサー

A.mdb に標準モジュールを追加し、下記のような Function プロシージャを作成。
---- 標準モジュール ここから ----
(見やすくするため行頭に全角スペースが入っているのでコピペ時には削除すること)

Function OpenHogeDB()
 Dim acApp As Access.Application
 Set acApp = New Access.Application
 acApp.Visible = True
 acApp.UserControl = True
 acApp.OpenCurrentDatabase "C:\aaaa\bbbb\cccc\B.mdb"
 Set acApp = Nothing
End Function
---- ここまで ----

次に A.mdb にマクロを作成する。
 アクション: プロシージャの実行
 引数: OpenHogeDB()

このマクロの名前を "AutoExec" にして保存する。

これで A.mdb 実行時に AutoExec マクロが実行され、AutoExec マクロが OpenHogeDB() プロシージャを実行し、B.mdb が起動する。(と思う)

A.mdb に標準モジュールを追加し、下記のような Function プロシージャを作成。
---- 標準モジュール ここから ----
(見やすくするため行頭に全角スペースが入っているのでコピペ時には削除すること)

Function OpenHogeDB()
 Dim acApp As Access.Application
 Set acApp = New Access.Application
 acApp.Visible = True
 acApp.UserControl = True
 acApp.OpenCurrentDatabase "C:\aaaa\bbbb\cccc\B.mdb"
 Set acApp = Nothing
End Function
---- ここまで ----

次に A.mdb にマクロを...続きを読む

Qそこでは、自分が別の世界に居るように感じられるだろう。 英語でお願いします

そこでは、自分が別の世界に居るように感じられるだろう。

英語でお願いします

Aベストアンサー

It will feel like as if you're in a different world there.

QアクセスVBAでの別アクセス呼び出しの記述について

作成したいテーブルが大きすぎて、2Gをあっという間に超えてしまいます。
なので、別のアクセスMDBも併用しつつ処理を実行しようかと思うのですが、
下記のように書いています。すると、まず、一つ目のDB(VBAを書いているほうのDB)でのtestクエリは実施され、TEST1DBが呼び出されるところまではいくのですが、TEST1DBにのっているtest2というクエリはうごきません。
どのように記述すればよいのでしょうか??ど素人でもうしわけありませんが、
どうぞよろしくお願いします。

Option Compare Database
Sub test()

DoCmd.OpenQuery "test"
fl_name = "MSAccess C:\xx\test1.mdb"
Call Shell(fl_name, 1)
DoCmd.OpenQuery "test2"

End Sub


また、あわせて質問なのですが、
テーブル作成クエリなので、「テーブルが削除されます」とかがでます。
自動バッチにしたいので、いちいち確認しないでサクサクと次へ進んでほしいのですが
解決策はあるのでしょうか?

よろしくお願いします

あと、いつも迷うのですが、、アクセスのフォームとかを書くときに使っているVBAは、
カテゴリー選択にないので、、VisualBasicを選んでいいんでしょうか??

作成したいテーブルが大きすぎて、2Gをあっという間に超えてしまいます。
なので、別のアクセスMDBも併用しつつ処理を実行しようかと思うのですが、
下記のように書いています。すると、まず、一つ目のDB(VBAを書いているほうのDB)でのtestクエリは実施され、TEST1DBが呼び出されるところまではいくのですが、TEST1DBにのっているtest2というクエリはうごきません。
どのように記述すればよいのでしょうか??ど素人でもうしわけありませんが、
どうぞよろしくお願いします。

Option Compare Database
Sub test(...続きを読む

Aベストアンサー

そんな大きなmdbを使った事は無いので耳学問ですが、
リンクテーブルにすれば2Gの壁を越えて、同一mdb内のテーブルと同様に
クエリ等が実行できると思いますが、いかがでしょうか。

一つの質問の中にいくつも項目を盛り込むのは、回答が付きにくいですし、後々データベースとしてのOKwaveを検索しにくいものにすると思いますので、避けた方がよろしいかと。
確認メッセージを出さない様にするには、ツール/オプションで設定できますが、コードでやるには
Application.SetOption "Confirm Action Queries", False
を実行し、用が済んだら元に戻せばよいでしょう。

最後のご質問については、常連回答者の皆さんは興味のあるカテゴリーを一通り見ていらっしゃると思うので、気にしないで良いと存じます。


このQ&Aを見た人がよく見るQ&A

人気Q&Aランキング

おすすめ情報