• ベストアンサー

MSアクセスで作ったファイルのテーブルの書式を変えることについて。基礎的なこと。

MSアクセスで作られた予約管理システムがあります。各予約要素にメモ欄があり、テーブルでこのメモ欄のデータ型をみたら、メモになっていることにきづきました。 メモ欄にはフォーム入力するのですが、最大でも100文字を超えた記載は想定できません。ですからテキスト形式にして、フィールドサイズを100に設定した方がよいように思えます。 そのために必要な作業は、テーブルのデータ型だけ変えるのでよいのでしょうか? 実際に入力するフォームも変えなければいけないのでしょうか? またクエリやマクロも関係するかどうか調べなければならないのでしょうか。 初歩的なことですが、どうかよろしくお願い申し上げます。

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

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

メモ型からテキスト型にフィールドを設定しなおすだけでも大丈夫です。フィールドのデータ型の変更時にフィールドサイズが小さくなったのでデータが失われる可能性があるというメッセージが出ますが100文字を超えていなければデータ自体は残ります。 フォームのメモ欄の変更もしなくても大丈夫です。しかしメモ型で最初にフィールドを作っているとフィールド属性が残ってしまうのかもしれませんが、あいまいになり通常テキスト型では出来ない改行も入力できてしまいます。 テキスト型に変更後もフォームのメモ欄のフィールドで改行して文字を入力すると2行3行と入力できてしまいテーブルを見ると1行目しか表示されず改行部分を削除すると2行目も表示されるような感じになります。 できればデータ型の変更ではなくテクスト型のフィールドを追加してメモ型のデータをテキスト型のフィールドへコピーしてからメモ型のフィールドを削除して使った方が良いと思います。それに合わせてフォームのメモ欄のコントロールソースを変えれば大丈夫です。 改行はしないよ と言うのであればテキスト型への変更だけで大丈夫でしょう。 クエリやマクロには問題ないと思います。メモ型のフィールドを使ってイベントを行うような仕様は通常ありませんから。

全文を見る
すると、全ての回答が全文表示されます。

その他の回答 (2)

  • 9013yagi
  • ベストアンサー率39% (15/38)
回答No.2

 文字数制限をするということは、テキスト型に変更ですか?その場合、不要な改行などを入れさせない為にも、フォームについては、テーブルへのインターフェイス部分になるので、必ず変更する必要があります。  また、クエリについては、基本的に編集する必要はありません(そのフィールドに関数を使っていなければ)が、一旦デザインビューで開かないと、正常に動かない場合があります。ま、マクロについては、内容がクエリの実行や、レポート表示程度のことなら、クエリ修正時点で修正されているものと判断できますが、そういった内容であるか、という確認はやはり必要ですね。  変更点について、関係する部分の確認を行うのは変更を行う人が最低しなければならない責任です。面倒だとは思いますが、頑張ってくださいo(^ ^)o

kimimy1
質問者

お礼

ありがとうございます。

全文を見る
すると、全ての回答が全文表示されます。
  • wakap
  • ベストアンサー率14% (13/89)
回答No.1

もし個人でお使いのシステムではなく、お金を頂いているシステムでしたら、おっしゃっている作業はどちらにしても必要だと思います。システムの修正後の正常動作確認ですよね。 フォームをかえなければいけないのかどうか等の調査もシステムの修正作業の一つではないですか?

kimimy1
質問者

補足

ご指摘ありがとうございます。 修正後動作確認いたします。

全文を見る
すると、全ての回答が全文表示されます。

関連するQ&A

  • Accessのフォームとテーブルについて教えてください。

    Access2003を使用しています。 既存のフォームAにフィールド3個を増やしました。 フォームAはテーブル(1)と連動していました。 追加したフィールドはテーブル(6)のものです。 ところがフォーム上で追加フィールドに入力が出来なくなりました。3フィールドのうち、ひとつはコンボボックスです。表示はされますが確定ができません。 フォームAのSQLステートメントではテーブル(1)・(6)以外にテーブル(2)・(3)・(4)・(5)が結合されています。 フォームAからするとテーブル(2)・(3)・(4)・(5)のデータはIDの名称を見るための参照用です。 テーブル(6)は、追加フィールドのコンボボックスが参照用で、他の2追加フィールドは、フォームから入力してテーブル(6)に反映させたいものです。 テーブル(6)の画面では入力できます。 フォーム上からは入力できません。 設定が何か欠けているからでしょうか? 他の質問では2つのテーブルをひとつのフォームにする場合は、クエリを別に設けた方がいいとなっています。フォームが出来上がっているので、できればクエリを設けずに行いたいのですが、よくない方法でしょうか? 手順なども踏まえて教えていただけると助かります。 よろしくお願いいたします。

  • MSアクセスでフォームからテーブル結合させたい

    製品マスタデータテーブルとオーダーテーブルがあります。 クエリで2つのテーブルを結合し表示させるのは簡単なのですが、 個々の注文データをフォームから作成するやり方がわかりません。 品番が共通項になっていて、フォームに品番を入力すると、製品マスターテーブルを参照して対応する品名や寸法を表示させたいのです。どこをどうすればよいのでしょうか?クエリにおける INNER JOINをイメージしています。 その後、その他もろもろの注文データに必要な項目を入力し、保存させればおしまいです。 クエリをベースにフォームを作成しましたが、それではフォームからの変更や追加ができません。 よろしくお願いします。

  • アクセスのフォームでデータ元をテーブルからクエリにかえたい

    上手く表現できるかどうかわからないのですが、頑張って書きます。少々長いです。 アクセスでフォームを使ってデータ入力しています。これは単純で、あるテーブルへのデータ入力をフォームを使ってやるだけのことです。このテーブルの中に「都道府県」というフィールドがあります。ある事情からこのフォームを使ってデータ入力(または修正)をするレコードは、「都道府県」のフィールドが「福岡県」のものだけでよくなりました。 そこで、「都道府県」に「福岡県」を持っているレコードだけを取り出すクエリを作ります。このクエリを元にして、同じフォームでデータ入力したいのです。入力項目は全く同じです。「福岡県」をもっているレコードだけが全く同じフォームで表示されるようにしたいのです。 もとのテーブル名を「全データ」とし、クエリを「福岡県抽出クエリ」と呼ぶとすると、どこかで「全データ」を「福岡県抽出クエリ」に書き換えればすべてのテキストボックスのデータ元が入れ替わってくれると思うのですが、それでいいのでしょうか。その場合、どうやったらいいのでしょう。 なぜ一からファームを作り直さないかというと、テキストボックスの大きさや配置を決めるのに膨大な労力を費やしていて、全部をやり直したくないからです。 どうかお願いします。ご指導ください。

  • アクセス テーブル作成クエリ

    アクセスです。 元のテーブルには「内容」と言うフィールドがあり、データ型をメモ型にしています。 値は255文字以上入れています。 そのテーブルを元にテーブル作成クエリで新規にテーブルを作成すると、 メモ型の内容フィールドは、テキスト型になり、全ての文字が入りません。 元がメモ型のフィールドでもテーブル作成クエリでテーブルを作成しても テキスト型にならないようにする方法はありますか?

  • アクセス2000のテーブル・クエリーについて

    アクセス2000でテーブル1(データ入力済み)、テーブル2(データ未入力)、 テーブル3(データ未入力)、テーブル4(データ入力済み)の4つのテーブルを作成しました。クエリーを上記のテーブルから作成しました。テーブル1とテーブル4はデータが入力されているので、クエリーに反映されています。その後、テーブル2に入力した後、そのクエリーに反映されないのは、どうしてでしょうか。 初歩的なことだと思いますが、教えて下さい。

  • MS accessで2つのテーブルを比較したい

    数々この質問は出ているのですが、『不一致クエリウィザード』でやっても上手くいかないので、こちらで質問させていただくことにしました。 比較したいデータは、フィールドの名前が異なる2つのテーブルがあって、その比較したいフィールド数は120になります。 同一フィールドは「FID」「laa」というフィールドです。 一応自分で『不一致クエリウィザード』でやってみた手順としては以下の通りになります。 1.『不一致クエリウィザード』をクリック 2.どちらかのテーブルを選択(レコード抽出テーブルや比較するテーブルなど) 3.関連付けフィールドは、2つのテーブルで同じものを選択  (「FID」「laa」を選択) 4.結果を表示するフィールドを選択(120個全部) 5.「クエリのデザインを編集する」の方にチェックを入れて「完了」 6.クエリのデザインになったら、それぞれの名前は違うけど対応するフィールド同士をつなぐ 7.結合プロパティで2番ないし3番を選択 8.それを全部のフィールドにした   ↓ すると「クエリが複雑すぎます」とエラーメッセージが出てしまった。 一体どうすればよいのでしょうか? なにぶん初心者ですので、よろしくお願いします。 ※もしかして、フィールド名が異なっているのはダメなのでしょうか?

  • アクセス メモ型 255文字以上入れられない

    アクセスでテーブルデザインでメモ型にしています。 そのフィールドには何文字でも入力できるようですが、 そのフィールドをフォームのテキストボックスのコントロールソースにすると なぜか255文字以上入力できません。 テーブルは一度クエリにして、フォームのレコードソースとしています。 ダイレクトにテーブルを開いて、そのメモ型のフィールドに情報を入れることは出来ますが フォームからは255文字以上は入力できません。 これを回避する方法をご教授ください。

  • Access フォームから複数テーブルの入力は?

    フィールドが300ぐらいあるので項目ごとにテーブルで分けています。 1つにまとめるクエリを作成して、そのクエリを元にフォームを作成しました。 テーブルはフィールド名:品番で1対1のリレーションを組んでいます。 テーブル:商品カラー  ・フィールド:品番  ・フィールド:カラー テーブル:商品サイズ  フィールド:品番  フィールド:サイズ クエリのフィールド  フィールド名:品番 (商品カラーのフィールド:品番を指定)  フィールド名:カラー (商品カラーのフィールド:カラーを指定)  フィールド名:サイズ (商品サイズのフィールド:サイズを指定) この場合、品番をフォームから入力すると商品カラーの品番のみ入力されます。 商品カラーと商品サイズの品番を同時にファームから入力は出来ないでしょうか? 現在は10テーブルありますが1つのテーブルにまとめたほうがいのでしょうか?

  • アクセス作成について

     アクセスについて質問します。  フォームで入力する場合で、例えばテーブルのレコードを100までとし、101を超えた場合またレコード1にデータを入力することは可能でしょうか。 テーブル フィールド1 フィールド2  1       6  2       8   .      .   .      . 100       55 フィールド1は固定し、フィールド2にデータを入力していき101番目にデータを入力する時はまた1行目の6を上書きしてデータを更新していくようなことは可能でしょうか。(もちろんフィールド1、フィールド2を別テーブルとしクエリーを活用することでもok) アクセス初心者です。よろしくおねがいします。

  • ACCESS 互換性の問題でしょうか?

    お世話になります。 ACCESS2003(OSはXP)でデータを作成しました。(ACCESS2000ファイル形式)そして、ACCESS2000(OSはWIN98)で使おうとしたんですが、不正な処理というメッセージがでて、ACESS自体が閉じてしまいます。そこで、再度ACCESS2003で使ってみたところ普通に動くようです。 詳しくは、社員リストをテーブルで作成。クエリでフォーム入力用に修正。フォーム作成してデータ入力。といった形で作成しました。 テーブルで入力する分には普通に動くのですが、クエリ・フォームで入力するとウインドウが閉じてしまいます。また、氏名、シメイ、誕生日等 フィールドに入力するとウインドウが閉じますが、同じテーブルであるメモというフィールドは入力しても閉じません。 いろいろリレーションシップやカナ自動入力等触ってみたのですが、うまくいきません。やはり、OSかACCESSのバージョンの互換性がうまくいっていないからでしょうか? うまく、説明できなくてすみませんが、よろしくお願いします。