• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:AccessのテーブルをExcelにエクスポートする際の並び順が狂う)

AccessのテーブルをExcelにエクスポートする際の並び順が狂う

このQ&Aのポイント
  • Access2002で、テーブルの内容をExcelにエクスポートする際、並び順が狂う現象が発生します。
  • エクスポートされたExcelを開くと、フィールド名:SEQ(プライマリキー)の昇順で1から順に並んでいるはずのテーブルが、一部分が異なる位置に移動しています。
  • Excelの出力方法に関わらず、この現象が発生する理由は不明です。

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

  • ベストアンサー
  • nda23
  • ベストアンサー率54% (777/1415)
回答No.2

Accessではテーブルをデータシートビューで 開いた場合の体裁(セル幅とか並び順)が記録 されています。 しかし、この体裁はエクスポートする時の動作まで 保証するものではありません。並び順を保証させる ためにはクエリをエクスポートするようにします。 クエリは勿論、並び順を指定しておきます。 DoCmd.TransferSpreadsheet acExport, _ acSpreadsheetTypeExcel9, "Aクエリ", _ 保存先, True AクエリのSQL SELECT * FROM Aテーブル ORDER BY SEQ

2time4date
質問者

お礼

ご返答、ありがとうございます。 そうやって一段階踏まないといけないのですね。 検討した結果、クエリを作成すると、後の管理が面倒なので、 出力したExcelを開き、SEQでソートし直そうかと思っています。 ExcelSheet.Range(ExcelSheet.Cells(2, 1), ExcelSheet.Cells(int_Row, int_Col)).Sort Key1:=ExcelSheet.Range("A1"), order1:=xlAscending

その他の回答 (1)

  • wkbqp833
  • ベストアンサー率36% (319/886)
回答No.1

Excelにエクスポートされたものが、実際のHDDなどに保存されているデータ順です。エクスポートはこの順に出力されます 一方、Accessで見ているデータの並びは、あくまでユーザーが見やすいように並べ替えたもので、実際のデータの保存順とは関係ありません 従って、ご質問のような結果となります

2time4date
質問者

お礼

ご返答、ありがとうございます。 そうなんですね、なんだか不便(?)な仕様ですね。 Excel出力前にクエリを作るか、出力後にVBAでExcel上でソートしなおすかにしようと思います。

関連するQ&A