• ベストアンサー

エクセルかアクセスで実現したい。

学会及び論文のデータベース(欧文)を作成しています。 今、エクセルファイルで各行に各発表番号、発表タイトル著者(複数人)が有ります。著者は複数の場合1つのセル内に”,”で区切ってまとめて書いてあります。著者は一人の著者が複数の発表に登録されていることも有ります。 このデータを元にして著者索引(author index)を作成したいのです。(1)著者と発表番号の対応一覧を作成するか、もしくは(2)著者の名前をテキストボックスに記入して検索すると関連する発表番号が一覧できるようにしたいです。 アクセスに関しては本当に基礎的な知識だけはもっています。わからないところは随時勉強します。(1)か(2)どちらも出来れば言うこと無いのですが、急ぐのでどちらか一方でもかまわないです。出来るだけ順序だてて教えてください。 表現力不足でわかりづらいかもしれませんが、出来るだけ補足でフォローします。よろしくお願いいたします。

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

  • ベストアンサー
  • ARC
  • ベストアンサー率46% (643/1383)
回答No.1

Accessでするなら、 0:データベースを作成して、Excelからデータをインポートする 1:クエリーを新規作成し、表示するテーブルを指定する 2:「*」をフィールドのところにドラッグ 3:「著者」をフィールドのところにドラッグ 4:「著者」の表示のチェックを外す 5:「著者」の抽出条件を  Like "*" & [検索する著者名を入力してください] & "*"  とする 6:このクエリーを保存 とすると、著者名による検索機能が実現できます。

propeller
質問者

お礼

ARCさんありがとうございます。さっそく両方試してみます。

propeller
質問者

補足

ただいまクエリを作成中ですが、タイトルで255文字を超えるセルが有り、エラーになってしまいます。255の文字数制限はどうにもならないでしょうか?何かうまく回避する方法がありましたら教えていただけないでしょうか?ダメなら”aaabbbccc...”などで片付け用と思っています。よろしくお願いいたします。

その他の回答 (3)

  • ARC
  • ベストアンサー率46% (643/1383)
回答No.4

#1 propellerさま >タイトルで255文字を超えるセルが有り、エラーになってしまいます。 テキスト型は、最大512バイト(全角で255文字)、メモ型は最大2GB(約20億文字)ですので、メモ型のフィールドに格納すれば楽勝です。(※Access2000の場合) ただ、XLS形式のデータをインポートするとき、データ型をメモ型にする事が出来ないみたいですので、 1:一旦、EXCELの方で、データをCSV形式で保存([ファイル]-[名前を付けて保存])した後、 2:Accessで、そのCSVのデータをインポート しなくてはいけないようです。

  • ponpon
  • ベストアンサー率19% (67/345)
回答No.3

データベースを使用する対象者が誰になるのか分からないので一概には言えませんが、どんどんデータ量が増える検索システムにするならAccessで作成したほうが後々いいと思います。フォームも作成できますし。 ご存知かもしれませんが、excelのデータはaccessに簡単にインポートできるので問題はありません。 方法はARCさんのご回答で完璧ですが、一冊簡単な本を買えば一目瞭然なので、それを見て、ウィザードを使用することをお勧めします。

  • ARC
  • ベストアンサー率46% (643/1383)
回答No.2

※この回答は、等幅フォントでお読みになると、読みやすいです。 それ以外の方法としては、後々応用がしやすいように、既存の表を下みたいな感じの表に変換してもいいかと思います。 表1: 発表番号 タイトル 著者 0001 ああああ Aさん 0001 ああああ Bさん 0001 ああああ Cさん 0002 いいいい Dさん 0003 うううう Aさん ※すべてExcel上の操作です。 1: 著者をコンマで区切って、複数のセルに分割する  1-1:著者の列を選択し、コピー  1-2:「メモ帳」などのエディタを起動し、コピーした内容を貼り付け  1-3:それを、「著者.CSV」などのファイル名で保存  1-4:EXCELで、保存したファイルを開く    (ファイルの種類を「テキストファイル」にして開く)  1-5:コピー、貼り付けを使って、下みたいな表に仕上げる  発表番号 タイトル 著者1 著者2 著者3  0001 ああああ Aさん Bさん Cさん  0002 いいいい Dさん  0003 うううう Aさん 2: 表1:みたいな表に仕上げる  2-1:シート全体を選択し、著者2で降順に並べ替える(データ-並べ替え)  2-2:著者2にデータがある行だけを選択し、コピー  2-3:表の最下行の2つ下の行を選択し、貼り付け    (空白行が1行出来るが、問題ない)  2-4:追加した部分の著者2の列を、著者1の部分に上書きで複写し、    著者2、著者3……を削除する  2-5:著者3以降も、同様に処理 で、表1みたいな表が完成したら、後は著者で並べ替えをしてやれば、著者別一覧が完成しますし、[編集]-[検索]で、任意の著者を検索したりすることが出来ます。 なんかあったら、どしどし補足ください。

関連するQ&A