Raymondは、Excel内から区切りファイルを適切にエクスポートする際に問題が発生していることを示しました。 Raymondは、Excelがタブ文字を区切り文字として使用してファイルを作成するように要求していました。行の最後のフィールドが空の場合、Excelは行の最後にタブ文字を確実に追加しないようです。

実際、これはExcelが動作するように設計されている方法です。情報を区切りファイルにエクスポートする場合、データテーブルの各行は個別に処理されます。ある特定の行のフィールドが他の行よりも少ない場合、Excelはエクスポートされた行を「空白」のフィールドで「埋める」ことはありません。もちろん、これは、Excelで作成されたファイルを使用し、各入力行のフィールドの静的な数に依存する他のいくつかのプログラムで問題を引き起こす可能性があります。

この潜在的な問題の回避策は、Excelがデータテーブルの最後の列のすべてのセルに常に何かを持っていることを確認することです。これは実際には思ったよりも簡単です。必要なのは、右端の列に[\ {|}]のような一意のテキスト文字列が含まれていることを確認することだけです。 (このような文字列がデータの他の場所で使用される可能性はほとんどありません。)区切りファイルにエクスポートすると、Excelは常に、一意のテキスト文字列まで、行ごとに同じ数のフィールドをエクスポートします。次に、区切られたファイルを他のプログラムにインポートするときに、インポートする各行の最後のフィールドを無視するようにプログラムに指示できます。

_ExcelTips_は、費用効果の高いMicrosoftExcelトレーニングのソースです。

このヒント(10564)は、Microsoft Excel 2007、2010、2013、2016、2019、およびOffice 365のExcelに適用されます。Excelの古いメニューインターフェイス用のこのヒントのバージョンは、次の場所にあります。