• ベストアンサー

リレーショナルデータベースの概念とエクセルのマクロとVBA

よろしくお願いします。 2つあります。 1.リレーショナルデータベースの概念とはどのようなものなのでしょうか?会社から「リレーショナルデータベースの概念は理解している?」と聞かれたのですが、正直言ってどういうものかわかりませんでした。 2.エクセルのマクロとVBAとはどう違うのでしょうか?私は同じような気がするのですが・・・同じく会社から「マクロとVBAが出来ないとだめだよ」と言われました。 私のスキルとしてはアクセスで簡単なマクロが組めます。 エクセルは簡単なマクロが組めます。 よろしくお願いします。

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

  • ベストアンサー
  • toysmith
  • ベストアンサー率37% (570/1525)
回答No.4

1. 非常に解説が難しいです。 「リレーショナルデータベースの概念」と一口に言っても、学術的なRDBの概念なのか?RDBMSを設計する概念なのか?RDBMSを利用してRDBを使うシステムを設計する概念なのか?RDBMSを利用するだけの概念なのか?それとも上っ面の概念なのか? (私はRDBMSを設計したり作ったりする方の専門ですけど) たとえば、「ACCESSみたいなソフトを作るときに必要なRDBMSの概念」と「ACCESSでVBAを使ってテーブルを使うための概念」ではかなりレベルの違う概念となります。 リレーショナル理論なんてRDBMS設計者でもない限り知らないでも困ることはないでしょうが、本来の意味では【基礎概念】です。 どのようなレベルの概念が知りたいのですか? 2. VBAはマクロを実現するための技術です。 一般的には「プログラム言語としてのVBA」と「開発環境としてのVBA」の両方を使えて「VBAが使える」と言うようです。 MicrosoftOffice環境においてマクロはVBAの利用技術です。 マクロ機能を持つアプリケーション/システムは数多く存在しますがVBAが使える環境は少数(っていうかMicrosoftOfficeファミリだけ)です。

noname#4373
質問者

補足

ご回答ありがとうございます。 専門的な仕事ではありませんので、設計者のような概念ではないと思います。 私も何をいっているのか正直わからないのです。 ですから、基本的な概念でよいと思うのですが・・・。 例えば、売上げなどを部門別や商品別(予算、実績、昨年度など)にもっているデータなどをアクセスやエクセルを使って、経営計画などの帳票を作成したり、分析するような仕事なのですが・・・。

その他の回答 (5)

  • gadd3
  • ベストアンサー率46% (211/451)
回答No.6

> 1.リレーショナルデータベースの概念とはどのようなものなのでしょうか? 何をしていた時にそういう風に言われたのでしょう?それがわかると、他の識者の方が詳しく教えてくれると思いますよ。 当然何の脈絡もなしにそういう風に聞かれたのでしたら、主キー外部キーに関してや正規化とか参照整合性(参照制約?)、SQLのことなど、一般常識的なことを言ってみえるのだと思うのですが・・・ >2.エクセルのマクロとVBAとはどう違うのでしょうか?私は同じような気がするのですが・・・同じく会社から「マクロとVBAが出来ないとだめだよ」と言われました。 僕はAccessのことしかできませんが、マクロはVBAを簡略化 したもの、つまり、VBA内で繰り返し書くのがめんどくさい命令が、マクロというかたちになって、単純化・ブロック化されている・・・というイメージに捉えてます。 (Excelの場合とは違うのかな?) また、マクロで出来ないことがVBAではできるようになります。例えばExcelからAccessファイルのテーブルの中をのぞいて、必要なデータだけもらってくるとか・・・・。 Excelでプロバイダのメールサーバーと接続してメール送信したり受信したり、受信メールを簡易データベース化するとか。 Officeソフト間でデータのやりとりをする時は便利です。 マクロだとこうのような細かい制御が出来ません。 基本的にはVBAができれば、マクロはそう必要ないと思うのですが、システムを使う人の要望によってはマクロの方が効率的な場合もあるかもしれないですし、マクロでしかできないということもあると思うので、VBAがほぼ出来て、マクロもだいたいわかるという状態に慣れるのがいいのではないかと思います。

  • stork
  • ベストアンサー率34% (97/285)
回答No.5

1.ER(エンティティとリレーション)が分かるかということでしょう。また、1対多や多対多のリレーションが理解できるかと言ったことも含まれるでしょう。 2.マクロは例えるならば、録音して何度も再生するものです。VBAは条件分岐やエラー処理を行います。マクロで記述されたVBAには不要なコードが多く含まれる為、これを適宜修正したり、直接VBAで記述したりすることが「VBAが出来る」ことだと思います。 ご質問では「マクロとVBA...」というように同じ土俵で発言されていることから推測して、本格的なプログラミングではなく、簡単なVBAを指していると思います。

  • ymmasayan
  • ベストアンサー率30% (2593/8599)
回答No.3

アクセスがまさにリレーショナルデータベースですが。 概念はデータを表の形で表して(関係表という)、1つまたは複数の表を使って いろんな処理をするというところです。 EXCELと違うところは、 1.セルという概念がない。 2.必ずキーがいる。 3.SQL(クエリー)を使ってはるかに複雑な処理ができる ということでしょうか。

noname#134955
noname#134955
回答No.2

アクセスを使えるのであれば、リレーショナルデータベースまでは、もう一歩です。ここはがんばって、 Web で検索するなり、本を読むなりして、リレーショナルデータベースについて勉強し、次には自信を持って答えられるようにしてはどうでしょうか。 なお、 アクセスマクロ ≠ アクセスVBA エクセルマクロ = エクセルVBA です。

  • S-Fuji
  • ベストアンサー率36% (592/1624)
回答No.1

アクセスは、まさにリレーショナルデータベースです。 エクセルやアクセスのマクロは、VBAを基本としています。  マクロが組めると言う事は、VBAを使えると言えるでしょう。  レベルは別よ。