• ベストアンサー
  • 暇なときにでも

EXCELやACCESSでDBに接続して色々な資料を作成したい。

EXCELやACCESSに付いているVBAを使って基幹システム(DB)に接続して内容を変更したりできますか? 現在外部データーベースへの接続(EXCEL)や、 データベースのインポートやリンク(ACCESS)で接続してデータの閲覧は出来るようになったのですが、更新作業が出来ません。 それとEXCELやACCESSのVBAの勉強をしたいのですがお勧めの書籍としてはどのようなものがありますか? 自分としては「EXCEL VBA 入門」とか「ACCESS VBA 入門」とかよりも、まずはVB自体の勉強をした方がいいのかな?と思っています。 ところがVB6.0とか、VB.NETとか色々なバージョンがあるようです。 お勧めの勉強法というか、順序などありましたら教えて下さい。 宜しくお願いします。

共感・応援の気持ちを伝えよう!

  • 回答数3
  • 閲覧数369
  • ありがとう数3

質問者が選んだベストアンサー

  • ベストアンサー
  • 回答No.2
noname#60992
noname#60992

データ参照ができるのであれば接続はできているようですね。 変更が許されるデータで、変更の権限があるなら更新できます。 VBAでもできます。 データベースにもよりますが、システムのデータをいじるのにはパフォーマンス、ロック属性などを考慮したうえにしたほうがよいと思います。 あと余計なお世話だと思いますが、RDBならテーブル構造などもしっかり理解しておかないと、予期せぬことが起こる可能性がありますのでご注意を。 接続方法はいろいろありますが、今はADOが主流でしょうか。  VB6はVBAとよく似ていますが、もう普通には販売されていません。   勉強法というほどのことではありませんが、ローカルのMDBなどに、データをある程度落としておいて、そこでいろいろ作業や実験などをしてみてはいかがでしょうか? 本番システムへの影響を最小限にいろいろできます。 

共感・感謝の気持ちを伝えよう!

質問者からのお礼

長らくお礼をまたせてしまい申し訳ございません。 どうも権限の問題か、DB側の設定の問題があり、参照はできますが、更新や追加は出来ないらしいです。 でもリンクではなく、インポートであれば問題ないので、定期的にDBをインポートする事にしてデータの活用を行っています。 アドバイスありがとうございました。

関連するQ&A

  • VB,NET2003のAccessやOracle以外のDBの接続について

    昨日VB.NET2003を購入しインストールしました。 それまではVB6.0を使用していました。 そこでVB.NET2003のDataGridにMySQLを連結しようと しましたがうまくいかないようです。 OracleやAccess以外ではStandardエディションは 接続できないようになっているのでしょうか? もし そうだとすればVB.NETのメリットって何なの でしょうか?

  • VB6.0からエクセルを起動

    現在VBとVBAの勉強をしているのですが、VB6.0からエクセルを起動する際に、エクセルにはVB6.0から引数を渡したいのですがどうすれば良いでしょうか? どなたか、ご存じの方が居ましたら教えてください。

  • ExcelVBAとACCESSVBA

    こんにちは。 今までExcelを使った仕事が多かったのですが、 最近、仕事でACCESSを使うチャンスがあり、 それまで興味があったのも加えて ACCESSにハマってしまいました。 それと同時に 最近VBAを勉強しておいた方がいいなぁ と感じるようになり、 EXCELの方が慣れているし自動記録 まではやっているからと、 ExcelVBAを勉強し始めましたが ExcelVBAのいろいろなお勧めサイトや、 本も何冊か買ったり スクールの入門講座に参加したり したのですが、 途中で挫折してしまうのです。 告白してしまうと EXCELが大嫌いなんです。(とうとう言ってしまった) 昔、EXCELと出会って使い始めたときから 全く興味が湧かず、仕事で必要だから 使用していました。 お陰でVBA以外の事はできるように なりましたが。。。 本屋へ行ってもACCESSのVBAの本の方へ 惹かれてしまうし。。(思いが募るばかり) ただ、ACCESSの方はまだ小さなデータベース を作成するレベルで VBAはまだ早いかなと思いつつ。 下らない質問で申し訳ないのですが ご意見頂けたらと思います。 よろしくお願いします。

その他の回答 (2)

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

>EXCELやACCESSに付いているVBAを使って基幹システム(DB)に接続して内容を変更したりできますか? 基幹システムに何を使っているか分かりませんが問題なく出来ます。 ADOを使って接続しレコードセットを取得したり更新をかけることができます。 ACCESSならODBCを使ってテーブルにリンクすればAccessのテーブルを使うように同様に更新など出来ます。 VBでやるなら基幹システムのDBに対してSQLを発行するようにして更新など出来ます。 >「EXCEL VBA 入門」とか「ACCESS VBA 入門」とかよりもまずはVB自体の勉強をした方がいいのかな?と思っています。 VBはどれから入っても分かりやすいと思いますけど。DBをいじるならSQLの勉強も必要です。 取りあえずAccessならVBも使えるしSQLも使えます。

共感・感謝の気持ちを伝えよう!

質問者からのお礼

アドバイスありがとうございました。 とりあえずVB.net2003の勉強をはじめました。 がんばっていきたいとおもいます。

  • 回答No.1
  • ipsum11
  • ベストアンサー率21% (55/251)

「VBA ADO」や「VBA DAO」で検索すると色々出てきます。

共感・感謝の気持ちを伝えよう!

質問者からの補足

ありがとうございます。 早速検索してみます。

関連するQ&A

  • ACCESSは同時接続って出来るのですか?

    データーベースについて勉強を始めたところで、まったく分からないことだらけなので教えてください。 データーベースとは、ユーザーが同時に接続出来るものらしいですが、ACCESSは同時にユーザーがファイルを開くことが出来るものなのでしょうか?

  • VBの勉強をしたいのですが

    今VBAの勉強はしています。それが、結構面白くなってきたので、VBも勉強してみたくなりました。(VBAはExcelとAccessです) ただ、今やっているVBAはVB5か6を元にしているとのことなんですが、今売っているVBは2005でかなり6から変わっていると言う事なのですが、それほど変わってしまっているのでしょうか?VBAとVBが似て非なるものとの認識は有りますが、VBAの文法はVBを元にしているとのことで、VBAをしていたら、VBに入り易いと聞いたものですから。でも、2005に全く役に立たないというのならまた一から勉強しなおしかなと思います。今までのVBAの勉強はある程度有効なのでしょうか? アドバイスをお願いします。もうVB6は売っていないようですし。

  • VBを買いたいが…

     コンピュータ関係の仕事をしている訳でもなく、システム管理者等でもないのですが、個人的にVBを買いたいと思っています。  Excelを持っているので、ExcelVBAは多少勉強したのですが、開発ソフトも使ってみたいという欲求が出てきたのです。  ExcelVBAの知識を土台にしようと思っているので、VB6.0とかVB.netのどちらかを買おうかなと考えているのですが、この2つはどのように違うのでしょうか?当サイトの回答などではVB6.0を薦めている人が多いようなのですが。  MSDNを見ても、用語が難しくて理解できません。また、VB.netのことばかりで、VB6.0のことが出ていない(と思う)のですが、VB6.0は現在発売されていないorマイクロソフトのサポートが無くなる、など不都合なことはありませんか?また、VB6.0が買えるとしたらいくらぐらいなのでしょうか?各種HPでVB.netが1~2万円ということは分かったのですが。  VB6.0はExcelVBAの知識が役に立ちそうですが、VB.netもそうなのでしょうか?  いろいろ質問を羅列してしまい、分かりにくくなっていますが、よろしくお願いします。

  • 「Access VBA」や「Excel VBA」 でインストーラーを作成したい!!

    VBで作成したアプリケーションにおいては、インストーラーを 作成できるのですが、「Access VBA」や「Excel VBA」で作成した アプリケーションのインストーラーの作成方法が分からず困っております。 どのようなメディア等を用意すればよいか教えてください。 よろしくお願いします。

  • 「VB6」、「VBA」、「VB.NET」と仲間分けするとしたら

    VBとVBAを勉強中です。 コードの書き方で仲間分けをするとしたら ・「VB6」、「VBA」  ・「VB.NET」 という感じでしょうか?

  • Accessの勉強法を教えてください。

    Accessの勉強法を教えてください。 VBAとSQLは書けますが、Accessはまったく触ったことがありません。 最近Accessの開発を任されましたが、仕事である以上ノーとは言えませんし、必死で勉強していますが、まったく理解できずに、手も足も出ません。 何が分からないのも分からない状態ですので、どう質問すればいいか。Accessの勉強法を教えてください。

  • AccessやExcelのマクロができるようになりたいのです

     私はAccessやExcelでデーターベース、住所録や顧客管理を作成して使うことはできるのですが、いまいちマクロを構築して更に使いやすくすることができません。  AccessやExcelのマクロはVisual Basicという言語のようですが、それは初級シスアドを勉強すればできるようになるのでしょうか?別に資格にこだわっているわけではありませんが、資格を取るという目的に向かって勉強した方がはかどるので・・・。  また、わかりやすい参考書などありましたら、合わせて教えて下さい。おわかりの方、よろしく御指導お願いします。  

  • VB6でデータベースの接続

    こんばんは 4月1日から内定した会社に出勤します。 先日、研修期間に何をするか話を聞いてきました。 毎日課題が与えられVB6でデータベースをつくるようです。 私はVB.NET2003しか勉強したことがないのでVB6との違いを予習しておきたいです。 VB6の評価版がついた入門書をアマゾンで注文したのですが評価版でデータベースの接続もできるでしょうか。 注文した本は『Visual Basic はじめてのプログラミング』 山本信雄著 翔泳社, OSはWindowsXP, 接続したいデータベースはAccess2003かSQLSever2005です。

  • accessからVBまたはVCへ移行

    クライアントではaccessを使い、SQLserverと接続する業務アプリがあります。 クライアントでのaccessをVBかVCに置き換えようとしたとき、どちらがより簡単に移行できるでしょうか? ただしaccessのVBAは詳しいですが、VBとVCは触ったこともないので、勉強しながら移行ということになります。

  • ACCESS VBA マクロ  Excelのデータをインポートする(複数シート)

    ACCESSのVBAでEXCELのシートにあるデータをインポートしたいです。シートは複数あり、シート数は作業毎に一定ではありません。データの数もシート毎に違います。(項目(column数)は全部同じです) 手作業でインポートをすると、どのシートのデータをインポートするかウイザードで選択しますが、シート数が多いので一度に同じテーブルにインポートをするVBAを組みたいのです。(データ数が多いのでエクセルで一つのシートにまとめる事が出来ません。) シート数がその都度違うので変数を使ったりVBAでインポートするのかな?と思うのですが。。。 インポートするベースのテーブルは先に作ってあり、データをインポートする際にそのテーブルに追加する形にしたいと思っています。 excelのVBAは初心者ですがAccessでのVBAの経験がありません。 ACCESSでのマクロ、VBAを良くご存知の方がいらっしゃったら是非教えてください。どうぞよろしくお願いいたします。