No.9ベストアンサー
- 回答日時:
#5です。
結構クリアしなければならない関門がありますね。
エクセルでの管理から、アクセスでの管理に移行するのであれば、
インポートは最初の一回だけの作業ですね。
> シートは外部セミナーの受講記録、社内研修の受講記録、資格取得の記録、通信教育の受講履歴
ならば、むしろそれぞれ別テーブルのほうが良いと思われます。
ただし、個人を特定するような項目は、[従業員ID]以外は不要です。
その代わり、[従業員マスター]テーブルを別途用意すべきです。
> 教育訓練・資格取得の記録を一元化したい
> ユニオンクエリしかないのでしょうか。
「一元化」というのは、なにも全ての種類の履歴を一つのテーブルに纏めてしまうことではありません。
「従業員ID」で別々の履歴テーブルをリンクして、一人の従業員の実績を参照できるようにすることが、「一元化」の第一歩です。
質問者さんがアクセスで、どのような管理をするのかというDB設計がキーポイントです。
それにより、追加のテーブルや、個々のテーブルの項目が決まってきます。
忘れないでほしいのは、
1.エクセルのシステムをアクセスに移行するのではなく、アクセスで実績管理のシステムを作成する。
そのためには、アクセスにどんな項目のテーブルが必要かを検討する。
2.エクセルの各シートは、あくまで元データとして割り切る。
というスタンスです。
また、VBAの知識は今後必須項目となるでしょう。
No.8
- 回答日時:
#5、7です。
「別テーブルから参照する」で注意点が抜けていました。
「売上実績表」などで、「商品コードさえあれば、単価は『単価表』から引っ張れるし、金額も同時に計算させよう」と
[売上日][商品コード][数量]
としてしまうと、単価が変更になったとき、変更前の売上データまで新価格で金額が計算されてしまいます。
ここは、あえて[単価][金額]項目を設けておくべきです。
また、[金額]項目も加えるのは、売上データが膨大である場合、その都度個々に[単価]×[数量]で計算させていると、非常に時間がかかってしまうからです。
ご参考まで...
No.7
- 回答日時:
#5です。
> 何個かのエクセルのファイルをインポートすると全部別々のテーブルになってしまいます。
それぞれのシートの列構成が同じであるなら、2つめ以降のシートをインポートするときに、
「新規のテーブル」を選択せず、1つめのシートをインポートした時に作られたテーブルへインポートすれば良いはずです。
> アクセスはなるべくテーブルを分割した方がいい
同じ構成のテーブルを複数に分割して持つのは、却って良くないです。テータベースの意味がなくなります。
「分割した方がいい」と言うのは、「別の表から参照できるような項目はダブって持つべきではない」という意味です。
例えば、学校のテストの結果のテーブルで、
[学生番号][氏名][実施日][科目][点数]
の[氏名]項目は無駄だと言うことです。
別途「学生名簿」というテーブルを設けておけば、クエリーで学生番号をキーに氏名を持ってくることが出来ます。
また、「先生、僕の名前は田中二郎でなく田中次郎です」と言われたとき、
「成績テーブル」の[氏名]項目の「田中二郎」を全て「田中次郎」へ変更する作業をしなければなりません。
別テーブルにしておけば、その「学生名簿」の一ヶ所を変更するだけで済みます。
度々アドバイスありがとうございます。それぞれのシートの列構成が同じなら1つのテーブルにインポートできるのですが、列構成が違います。例えば、シートは外部セミナーの受講記録、社内研修の受講記録、資格取得の記録、通信教育の受講履歴、という様な感じで、入力項目もそれぞれ微妙に違っています。これらのシートを全てまとめて、1人の人がこれまで受けた教育訓練・資格取得の記録を一元化したいのですが、ユニオンクエリしかないのでしょうか。
No.6
- 回答日時:
>エクセルのシートが何個かあり
フィールドの個数とデータ型が同じなら
ユニオンクエリで縦に結合できます
そのときにどのシートからのデータかを現すフィールドを付け加えます
ただしユニオンクエリはクエリデザインビューでは作れません
SQLで書いてやることになります
ヘルプを見てわからなければ、本を買うことになるかな
No.5
- 回答日時:
他の方々言われるように、エクセルからアクセスへのインポートは物理的には可能です。
しかしながら,#4さんが言われるように、「そのまま利用できるか?」というと「NO」です。
例えば、1つのシート内でレイアウトが異なる表が複数存在すると、全くダメです。
> Accessをやる場合Excelでの知識はむしろ邪魔になります
これも正しいです。
例えば、エクセルの経験者はデータを横展開しがちです。
日付をヨコに配置したりします。
あるいは、以下のように同じ種類のデータを横展開します。
A B C D
1 氏名 英語 数学 国語
2 田中 80 60 70
3 鈴木 50 70 30
アクセスでは
氏名 科目 点数
田中 英語 80
田中 数学 60
田中 国語 70
鈴木 英語 60
鈴木 数学 70
鈴木 国語 30
のように設計します。エクセルでもデータベース的に使いたい場合は、
アクセス的な配置にしないと、うまく検索出来なかったりします。
ご参考まで...
初心者にもわかりやすいご説明ありがとうございます。
ところで、何個かのエクセルのファイルをインポートすると全部別々のテーブルになってしまいます。アクセスはなるべくテーブルを分割した方がいいと、マニュアルなどで見かけるのですが、1つにできないのでしょうか。アドバイス頂ければ幸いです。
No.4
- 回答日時:
Accessはデータベース、Excelは表計算両者は全くジャンルの異なるソフトです
従ってExcelのデータを取り込んでそのまま利用できるということはまず無理です
Access用に加工してやる必要があります
Excelからのインポートをやりやすくするには
Excelのほうでデータを[リスト]と呼ばれる形式に整えておきます
>事前に勉強しておいた方がいいことがあったら、教えて下さい。
Accessをやる場合Excelでの知識はむしろ邪魔になります
全く異なったやり方をするものだということが納得できるまで
Accessについて勉強してからはじめたほうがいいですよ
アドバイスありがとうございました。一応成功はしたのですが、
エクセルのシートが何個かあり、それぞれ違う項目が含まれているのですが、それら全部のシートをアクセスで一つのテーブルにまとめたいのですが、無理でしょうか。教えて頂けると幸いです。
No.3
- 回答日時:
ExcelのデータをAccessに取込む際にはデータ形式に問題が発生する場合があります。
Excelのセルのデータは通常は「標準」という形式になっています。これは入力されているデータの種類によって文字列であったり、数字であったり、日付であったり様々な形式を自動的に判定してくれます。しかしAccessのテーブルにデータを格納する場合は、各フィールドのデータ形式が固定されます。従って数字形式(整数や長整数等)と指定されたフィールドに文字列を取込もうとすれば必然的にエラーになります。ウィザードなどでExcelからデータをインポートする際には、見出し行から数行のセルの値がどのような形式の値かによって、自動的にフィールドのデータ形式が決められます。複数のデータ形式の内容があればテキスト形式などになります。Access側では同じ列のデータは、すべて同じデータ形式として判断され処理されますので、最初の方に数字が入っていて、後半に文字列が入っていたりすると、数字データとして取込がされて後半の文字列がエラーになる場合もあります。
インポートする場合にはフィールドのデータ形式の指定ができますので、データを取込む際に各列のデータ形式に注意する必要があります。
アドバイスありがとうございます。
データ形式に注意してインポートをしてみたら、成功しました。
いろいろなエクセルのシートをインポートすると、それが全部それぞれ別のテーブルになってしまうのですが、1つのテーブルにまとめたいのですが、無理でしょうか。
No.2
- 回答日時:
どうもです。
エクセルのデーターを活用するには
1.エクセルデーターをインポート
2.エクセルに対してリンクを貼る
の方法があると思います。
インポート時の注意点はACCESSテーブルとエクセルのデーターが同じ型かどうかだと思います。
エクセルデーターが文字列で 00123
ACCESSテーブルが数値の場合 123
になってしまいます。
まぁ1回きりのデーター移行(手動)であればインポート時のウィザードでフィールドの型をキチンとやれば簡単に出来ると思います。
ちなみに、2のリンクはエクセルのデーターに対して追加しないとデーターは増えません・・・・・
がんばって下さい。
アドバイスありがとうございます。
リンクの方が難しそうですので、いったんエクセルのデータをアクセスにインポートしたら、アクセスで管理していこうと思います。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Excel(エクセル) エクセルで沢山のレコードの最後に追記するには? 7 2023/04/10 13:27
- Excel(エクセル) エクセルでのアクセス履歴をとりたいです 1 2022/06/13 17:30
- Excel(エクセル) CSVファイルがカンマ区切りにならない。対処法を教えていただきたいです。 仕事でSMS一斉送信ができ 2 2022/07/01 21:24
- その他(コンピューター・テクノロジー) コピーデータの欠落 1 2022/07/14 23:30
- その他(IT・Webサービス) EXCELVBAでシートを他のブックにコピーする命令を出すと毎回存在しないシート名の問合わせがある 1 2022/05/07 15:12
- Excel(エクセル) EXCELVBAでシートを他のブックにコピーする命令を出すと毎回存在しないシート名の問合わせがある 2 2022/05/07 17:16
- Excel(エクセル) 【VBA】指定フォルダに格納中のテキストファイルをエクセルで処理し結果のエクセルを新規フォルダに保存 1 2022/03/25 14:19
- WordPress(ワードプレス) WordPress のブログを初期化したい。リスクは? 1 2023/01/01 05:47
- その他(プログラミング・Web制作) Windowsのマクロプログラムで、こんなことできますか? 3 2022/06/28 14:30
- Word(ワード) LibreOfficeで数年保存しているデータの変更作業 4 2022/07/08 17:15
関連するカテゴリからQ&Aを探す
おすすめ情報
- ・漫画をレンタルでお得に読める!
- ・プリン+醤油=ウニみたいな組み合わせメニューを教えて!
- ・タイムマシーンがあったら、過去と未来どちらに行く?
- ・遅刻の「言い訳」選手権
- ・【大喜利】【投稿~11/12】 急に朝起こしてきた母親に言われた一言とは?
- ・好きな和訳タイトルを教えてください
- ・うちのカレーにはこれが入ってる!って食材ありますか?
- ・好きな「お肉」は?
- ・あなたは何にトキメキますか?
- ・おすすめのモーニング・朝食メニューを教えて!
- ・「覚え間違い」を教えてください!
- ・とっておきの手土産を教えて
- ・「平成」を感じるもの
- ・秘密基地、どこに作った?
- ・【お題】NEW演歌
- ・カンパ〜イ!←最初の1杯目、なに頼む?
- ・一回も披露したことのない豆知識
- ・これ何て呼びますか
- ・初めて自分の家と他人の家が違う、と意識した時
- ・「これはヤバかったな」という遅刻エピソード
- ・これ何て呼びますか Part2
- ・許せない心理テスト
- ・この人頭いいなと思ったエピソード
- ・牛、豚、鶏、どれか一つ食べられなくなるとしたら?
- ・ハマっている「お菓子」を教えて!
- ・【大喜利】【投稿~11/1】 存在しそうで存在しないモノマネ芸人の名前を教えてください
- ・好きなおでんの具材ドラフト会議しましょう
- ・餃子を食べるとき、何をつけますか?
- ・あなたの「必」の書き順を教えてください
- ・ギリギリ行けるお一人様のライン
- ・10代と話して驚いたこと
- ・つい集めてしまうものはなんですか?
- ・自分のセンスや笑いの好みに影響を受けた作品を教えて
- ・【お題】引っかけ問題(締め切り10月27日(日)23時)
- ・大人になっても苦手な食べ物、ありますか?
- ・14歳の自分に衝撃の事実を告げてください
- ・【大喜利】【投稿~10/21(月)】買ったばかりの自転車を分解してひと言
- ・ホテルを選ぶとき、これだけは譲れない条件TOP3は?
- ・家・車以外で、人生で一番奮発した買い物
- ・人生最悪の忘れ物
- ・【コナン30周年】嘘でしょ!?と思った○○周年を教えて【ハルヒ20周年】
- ・あなたの習慣について教えてください!!
- ・都道府県穴埋めゲーム
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
ACCESSにEXCELからインポートし...
-
access 2003 1万件以上がカット...
-
ACCESS、フィールドが異なるデ...
-
アクセス2003 複数の列に...
-
SQL文で パラメータが少なすぎ...
-
差込印刷での全角表示について...
-
日付型のフィールドに空白を入...
-
エクセルにおける「フィールド...
-
Access「レコードが削除されま...
-
アクセスのエラー「クエリには...
-
2つのテーブルに共通するレコ...
-
フィールドの更新がない
-
エクセルデータをワードで差し...
-
クロス集計クエリの結果をテー...
-
EXCELの外部データ取得ができない
-
BCPでCSV内の文字列をテーブル...
-
アクセスで追加した項目に全て...
-
ACCESSの時間帯の抽出について
-
Accessで、テーブルに入力した...
-
アクセス データエクスポート...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
ACCESSにEXCELからインポートし...
-
ACCESS、フィールドが異なるデ...
-
Access(アクセス)でのインポー...
-
アクセス2003 複数の列に...
-
Access フォームからの入力結...
-
Access2010でVBAでのインポート
-
アクセスでの、固定長でのテキ...
-
ACCESS ユニオンクエリ...
-
Access テーブルをデータシー...
-
アクセス2010にエクセルデータ...
-
accessのデータを検索するツー...
-
アクセス2000 65536行を超える...
-
アクセスの容量がなぜか増加します
-
MsAccessからOracleDBへの操作...
-
エクセルからアクセスへ貼り付...
-
Access2002でExcel2002のデータ...
-
ACCESSのテーブルからデータを...
-
壊れてしまったアクセスデータ...
-
accessのデータで重複している...
-
accessのシステム開発。自動更...
おすすめ情報