• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:【access】テーブルの項目順が意図せず変わる)

テーブルの項目順が意図せず変わる

piroin654の回答

  • piroin654
  • ベストアンサー率75% (692/917)
回答No.3

>デザインビューで表示される項目順とデータシートビューで表示される項目順が、 >意図せず変わる事象が時折発生します。 実は、データシートビューは結構いかげんに フォームを設定してもデータシートビューを 選択するときれいにデータシートビューとして 表示されます。たとえば、フォームのデザインビューで 詳細を大きく開き、そこにテキストボックスを適当な 大きさで、しかもすべて重ねてもフォームをデータシートビュー で選択すると、そのままきれいにデータシートビュー が表示されます。この場合、フィールドの順序は テキストボックスが作成された順に左から並べられます(たぶん)。 また別の場合、たとえば、フォームのレコードソースを設定し、 表示されたレコードソースのフィールドを適当に選択し、適当に デザインビューの詳細に放り込むと放り込んだ順にデータシート ビューで順番に並んでいきます。つまりテーブルで設定した 順番にはならずに、です。 そこで、 >デザインビューで表示される項目順とデータシートビューで >表示される項目順が、意図せず変わる事象が時折発生します。 この事象がどのような経緯で起きるのか、実際に遭遇したことが ないので分かりませんが、データシートビューにはフィールドの 並びに関するColumnOrderというプロパティがあります。これは フィールドの順序、すなわち左から何番目という設定を 行なうプロパティです。このプロパティが何らかの理由で 入れ替わったのでは、と思われます。それを再現するには 実際のプログラムを使ってみなければならないのですが。 それは無理として、並びを固定する方法はいくつかありますが、 たとえばフォームを開くときのイベントで、 Private Sub Form_Open(Cancel As Integer)   Me!フィールド1.ColumnOrder = 1   Me!フィールド2.ColumnOrder = 2   Me!フィールド3.ColumnOrder = 3 End Sub のようにしてみてはどうですか。この場合 フィールド1などはテキストボックスの名前 です。 あるいは、データシートを表示した状態で、 フォームのフィールド名のところにマウス を当て、下向きの矢印になったら横にスライド させてフィールドをすべて選択して、コード表の 書式から「列の固定」を選択してはどうでしょう。 ただし、こちらの方法はお呪えが効くかわかりません。 確認してみてください。また、ファイルを閉じて 再度開いたときに同じような操作をした場合に フィールドの順序の変化が起こるのか確認してみて ください。 以上の二つがありますが、コードで設定しておくのが いいような気がします。

関連するQ&A

  • Access2003のテーブルが、Access2007でフィールド名の順番が変わってしまいます

    Access2003のテーブルが、Access2007でフィールド名の順番が変わってしまいます。 PCが変わり、Access2003のデータをそのまま、新しいPCにコピーしました。 新しいPCではAccess2007が入っていました。 Accessで、テーブルをデータシートビューで開いたところ Access2003の時のフィールドの表示順が崩れてしまいました。 例えて言うと Access2003では   ListNo 文献ID 登録状況 備考 Access2007では   ListNo 登録状況 文献ID 備考 の順で表示されています。 これはデータシートビューで表示の順番が変わってしまうのですが デザインビューでは、順番は変わっていないのです。 Access2007でも、Access2003のテーブルでのフィールド名の順番のまま 表示させるにはどうしたらいいでしょうか? Access2007はほとんど使ったことがないため、無知です。 いろいろ調べてはみてるのですが、調べ方も下手なのだと思いますが、これという情報にたどり着けません。 時間がないため、こちらに質問しました。 助けていただければと思います。よろしくお願いいたします。

  • Accessの抽出についての質問

    Accessの抽出についての質問をします。 テーブルからデータシートビューで開いたものを「レコード」「フィルタ」「フィルタ/並べ替えの編集」で条件を入れて抽出できると思います。 そこまでは理解できたのですがクエリの場合はもう1つあると知りました。 クエリの中のデータをやはりデータシートビューで開いて、「レコード」「フィルタ」「フィルタ/並べ替えの編集」で条件を入れて抽出する以外に デザインビューで開いてデザイングリッドという下の画面でも同じように条件を入れて抽出できると聞きました。 画面はデータシートビューでの「フィルタ/並べ替えの編集」画面と少し似ているようですがちょっと違います。 この2つはどう違うのですか どう使い分けるといいのでしょうか? 教えてください。

  • Access2000トラブル テーブル閲覧不可

    Access2000でテーブルが開けなくなりました。 「レコードが削除されました」と出てきてデータシートビューでの編集・閲覧ができません。 デザインビューでは見れますが、特に問題無い様に思います。 フォームでは各入力項目に「Delete」が表示されています。 どうすれば良いかおしえてください。

  • Accessでテーブルをデータシートビューで開けない

    ここ数日、AccessでAテーブルをデータシートビューで開こうとすると、ODBC すべてのレコードをロックできません、というメッセージが出てしまいます。デザインビューで開くことはできるのですが、このAテーブル(リンクテーブル)を使って新規クエリを作ることもできなくなってしまいました。 前に作ったクエリは普通に開くことができます。 Aテーブルを使わずにクエリを作成すると、問題なくできます。 設定を変えた記憶はないのですが、どうしたら元通りになるのでしょうか。 よろしくお願いします。

  • エクセルからアクセスにインポートする場合、配順や項目数の関係について教えてください。

    エクセルからアクセスにインポートする場合、配順や項目数の関係はどのようになるのでしょうか? アクセスのフィールド数は3個あるとします。 デザインビューでは上から「あ」「い」「う」で並んでいます。 データシートビューでは、「い」「う」「あ」で並んでいます。 エクセルのタイトル行の配列順も上記のどちらかにあわせたほうがよろしいのでしょうか? それとも同一名の項目があれば、配順には決まりがないですか? アクセスのテーブルにあるフィールド名が、エクセルのタイトル行にないとエラーになるでしょうか? 基礎的な質問でしたら申し訳ございませんが、どなたかご回答をお願いいたします。

  • Access SQL

    Access2000です。 クエリである項目が=1ならXX、=2なら○○としたいのでヘルプを参照し SQLビューで IF(項目A=1,10*項目B,IF(項目A=2,20*項目B,0)) としました。 データシートビューを出そうとするとエラーになります。 エラーはIFが未定義関数だというものです。 なお、デザインビューは開けます。 どこがいけないのでしょうか? よろしくお願いいたします。

  • Access リレーションのある項目並び替え

    一人で、初めてAccessに取り組んでいます。 相談できる人が周りに居ないので、助けてください。 2つのテーブルがあります。 テーブルデータA    ヘッダーID(オート)    グループ名    区分    文書名 テーブルデータB    区分ID(オート)    区分インデックス    部品名 テーブルデータA”区分”と、テーブルデータB”区分インデックス”が、リレーションシップで繋がっています。 テーブルデータAを、”区分”の昇順で並び替えをして、フォーム上で表示させたいのですが、 フォーム上で表示させる以前に、データシートビューで確認するも、並び替えが出来ません。 テーブルデータBをデータシートビューで表示すれば、”区分インデックス”順に並ぶのですが、 テーブルデータAをデータシートビューで表示すると、昇順も降順も変化なく、”区分”で並び替えができません。(バラバラの状態です) ちなみに、”区分”及び”区分インデックス”は、テキスト型12桁です。 リレーションシップが付いてる項目は、並び替えができないのでしょうか?

  • Access2003 リンクテーブルをフォームでデザインビュー表示したい

    kamuycikapです。 フォームやクエリを作成している「FQ.mdb」とデータが保存されている「DT.mdb」を分けている為、FQ.mdbではテーブルをリンクしてデータを入力したりクエリ利用したりしています。 DT.mdbに作成しているテーブルはリレーションシップされており、デザインビューで開くと「+」マークが表示されていて、紐付けられているデータを開くことが出来、非常に便利です。 メインとなるテーブルをデザインビューで開くことで、連鎖するテーブルのデータまで入力する事が出来ます。 これを、FQ.mdb側のフォームに表示したいのですが「+」マークが表示されていません。 FQ.mdbのマクロで DoCmd.OpenForm stDocName, acFormDS, , stLinkCriteria として、acFormDSで開くように記述しているのですが・・・・ リンクしている側のテーブルを開いても、「+」マークつきのビューで開くことが出来ないのでしょうか? ユーザーさんから 「入力フォームでの入力もいいんだけれど・・・・デザインビューでの入力も捨てがたいからフォームに表示できるようにしてよ」 的な要望があったのです。 識者の方、ご教示願います。

  • ACCESSのフィールドの表示順が変更できない

    いつもお世話になっております。 クエリ実行結果の表示は、クエリのデザインビューで設定した左側のフィールドから順になっているかと思いますが、 フィールドの表示順を変更したところ、デザインビューでは希望の順に変更できたのですが、 クエリ実行すると、その変更が反映されていないのです。 何が原因ですか?修正方法はありませんか? ご存じの方、どうか宜しくお願い致します。

  • Access2013テーブル結合クエリ

    Access2013 住所録テーブルと面談備忘録テーブルを、氏名で結合したクエリを作成したいのですが。 この二つのテーブルの氏名が重なり合わないものもあります。 この際、重なり合わない氏名などもクエリのデータシートビューに表示させる方法を教えてください。 フィールドの抽出条件になにか記入するのかなと思っています。初心者です。 宜しくお願いします。