• 締切済み

ACCESSでできますか?

現在、私の職場は社内メール(イントラネット)で結ばれています。そのネットを利用して、ACCESSでデータ管理をしたいと思っているのですが、自課のDBに他課の人が入力することはアクセス権が無いのでつなげないメッセージが出てきます。(ちなみにイントラネットではスターオフィスを使用しています。)多分、セキュリティー上の問題だと思うので、直接アクセスすることはあきらめました。 よって、ACCESSより入力した情報(特定の1レコード)をインターネット(メール)で飛ばして、その内容をインポートしてみては?と考えたのですが、既設のDB(ACCESS2000にて私が作成)にそんな機能を組み込むことは可能ですか? 簡単にフローを書くと 1.ACCESSで必要条件を入力 2.アクティブなレコードのみ(テキストかMDBファイル?)を送信(指定のメール  アドレスへ) 3.ACCESSで当該ファイルをインポート というようにしたいのですが、何か参考となるものは無いでしょうか。 ちなみに、私はACCESS初心者(VBAを少し使える程度)です。 よろしくお願いいたします。

  • nkeis
  • お礼率57% (86/150)

みんなの回答

回答No.3

私の会社でも以前似た様な事をやっていました。 しかし、更新レコードを送る方法だと、 1.データを受け取った相手がちゃんとインポートしない事がある。(休みとか、忙しいとかで) 2.インポートの順番を間違えたり飛ばしたりするとデータに整合性がとれなくなる。 3.整合性がなくなったテーブルを修復するのは大変で、結局ファイルを全部送るほうが確実で簡単。 4.プログラムの作成が手間 といった理由で、更新部分だけではなく、Accessのファイルを全部送っていました。 これはファイルサイズと通信速度によるので、一般的とは言えませんが、参考までに。

  • O_cyan
  • ベストアンサー率59% (745/1260)
回答No.2

問題無く出来ます。 Accessでエクスポートする際はmdbでは1レコードでも余分な容量が必要になって しまうのでメールで送るならtxtやcsvでの方が軽いので良いと思います。 インポートする側もAccessのインポートする際にインポート定義を使えば楽に組める と思います。 初心者でもマクロで可能な範囲だと思いますよ。

  • aptiva
  • ベストアンサー率36% (193/529)
回答No.1

Docmd.Sendobjectを使うといいと思います。 条件をクエリーで作成し、そのクエリーの内容をTXT形式やXLS形式等でEメールで送信することが出来ます。 取りこむ方は、Docmd.TransferSpreadsheetでインポートをすることが出来ます。VBAヘルプを参照してみて下さい。 取りこむもう一つの方法として、送信側はテキストで作って、取りこむ側はOpenとinputを使ってテキストファイルを読み取り、Recordsetで書きこむとか。 うまく組み合わせて、がんばってください。

関連するQ&A

  • Excel → Access データをインポート

    OS WinXP Pro SP2 Office 2000 SP3 はじめまして。 マクロ(Excel VBA)を記述しているExcelファイル(Xls_Macro.xls)とインポート用データのExcelファイル(Xls_Data.xls)は別々のファイルになっていて、マクロを実行するとExcelファイルとインポート用データのExcelファイルのデータをAccessファイル(Access.mdb)にインポートする仕組みを開発しています。 インポート用データのExcelファイル(Xls_Data.xls)をADOで接続しレコードセットでデータを取得し、Accessファイル(Access.mdb)もADOで接続しレコードセットの「.AddNew」でAccessファイル(Access.mdb)に更新しようと考えています。 この考え方で問題ないのでしょうか!? もっと簡単な方法があるという方や、何か良い方法をお持ちの方 いらっしゃいましたら、よろしくお願いいたします。

  • Access 壊れた?

    お願いします。 Access2000です。 あるMDBを開くと「'MSysAccessObjects'の読み取り権限がないので、レコードを読み取ることができません。」のメッセージが表示されます。「Shift」+「Enter」で開こうとしてもダメでした。今日の午前中まで使用できていたので突然のエラーに困っています。気になるのは同じフォルダ内に「db1.mdb」~「db18.mdb」があったことです。 しかし、それらのファイルは削除してしまいました。 (ゴミ箱を空にしてしまいました。) この現症と対処方法を教えてください。 とっても困っています!

  • これもaccessファイルを共有している事になりま

    これもaccessファイルを共有している事になりますか? 1つのパソコン(vista)を複数のユーザーで共有し db1.mdbをパブリックのフォルダに置き ユーザー1ログオン時に、db1.mdbを開き ユーザーを切り替えて ユーザー2でログオンし、db1.mdbを開いてデーター入力することも 「アクセスを共有してる」 「db1.mdbを共有して使ってる」 という事になりますか?

  • アクセス2007でのインポートエラー「カレントレコードがありません」に

    アクセス2007でのインポートエラー「カレントレコードがありません」について。 データをインポートしようとすると「カレントレコードがありません」と表示され、インポートできません。同時に作成されるインポートエラーテーブルを確認すると「型変換エラー」が原因のようです。 インポート先のファイル(名簿.accdb)は、従前使用していたアクセス2003のファイル(名簿.mdb)を2007対応にしたものです。(各オブジェクトの構成や保有データは同一) 試しに、同じテキストデータをアクセス2003ファイル(名簿.mdb)にインポートしたところ、正常に完了しました。 アクセス2003の入ったパソコンが廃棄予定であり、今後はアクセス2007ファイル(名簿.accdb)を使いたいのですが、非常に困っています。原因と対処法を教えてください。 ※インポートする元データはエクセルマクロ有効ブック(.xlsm)のため、コピーしてテキスト形式で保存しなおしています。

  • アクセス97のファイルをアクセス2007で開くには

    はじめまして。 手元にAccess97で作成したmdbファイルがるのでが、Windows7環境のAccess2007で開くことができません。 エラーメッセージは、「オブジェクト 'テーブル1'が見つかれませんでした。オブジェクトが存在していること、名前やパス名が正しいことを確認してください。」となっています。 このファイルをAccess2007で開くためには、いったんAccess2000~Access2003で保存し直したうえで、Access2007で開く必要があるという情報をMSのページで見ました。 しかし私はAccess2000~Access2003環境を持っておりません。 そのような中で、このAccess97で作成したmdbファイルを開かなければならないのですが、何か方法はないでしょうか。 ご教示いただけると誠に幸いです。 どうぞよろしくお願いいたします。

  • Accessへのインポート

     VBにおいてdatファイルをAccessへインポートしたいのですが、一体どうやるのか皆目検討がつかなくて…(TT)。教えていただけないでしょうか?ちなみにAccessのmdbファイルはまったくない状態で開始します。その場合は列名もしていするのでしょうか?

  • アクセス(ACCESS) インポート定義について

    アクセスのインポート定義ファイルのコピーをしたのですが格納場所とかあるのですか? 現在使用中のMDBファイルが幾つかあります。MDBファイル毎にインポート定義ファイルが設定されてしまうので、別のMDBで同インポート定義ファイルを使用したい場合は、再度同じ仕様のインポート定義ファイルを作成しなくてはならないので面倒です。 他に、良いやり方がありましたらご教示願います。

  • win2000環境でaccess95のレポートのインポートがうまくいきません。

    win2000環境で、access95の別のmdbからレポートをインポートしようとすると、アプリケーションエラーが出ます。再度受入側のmdbを立ち上げると、accessのデータベースプロパティのファイルの構成にはレポート名が残り、データベースウィンドゥ上にはレポート名が上がってきません。どうも、mdb上には、インポートしようとしたレポートが残ってしまっているようで、以後動作が非常に不安定になります。MSではwin2000上でのoffice95の動作は保証していないと以前聞いたことがありますのでいたし方ないのかもしれませんが、会社で使っているmdbがまだaccess95環境ですし、accessはexcelやwordのように95と2000で互換性が全くありませんから、何とかaccess95で動かしたいと思っています。同様のケースで対処法ご存知の方いらっしゃいましたら、ご教授願いませんでしょうか?よろしくお願いします。

  • Accessのテーブルへのリンク

    いま、ASPのDBとして使っているAccessのファイル A.mdbがあります その中の一つのテーブルを別のAccessファイル B.mdbにリンクして、参照したいと思っています。 しかし、B.mdbからリンクするときに インポートすると、A.mdbの変更が反映されず、 リンクすると、B.mdbで変更したものがA.mdbにも反映されて困っています. やりたいことはB.mdbから安全に(変更なしで)A.mdbのテーブルを 閲覧したいのです. ・A.mdbの変更をB.mdbに反映したい ・B.mdbのテーブルの変更はA.mdbに影響がない と言うことです. どうかお力添えを よろしくお願いします.

  • Accessネットワークについて

    ネットワークでAccessを使用しているのですが、私のPCでファイルを開いて閉じても問題ないのですが、別のPCだと開いたり閉じたりはできるのですが、閉じたら必ず「db1.mdb」、「db2.mdb」…という名前で全く同じ中身のファイルが閉じるたびにできてしまい、困っています。どなたか対処法を教えてください。