Excelは通常、データのインポートに関してはかなり賢いですが、使用する自動解析が非常に面倒な場合があります。たとえば、「1-4-9」(引用符なし)などのテキスト文字列を含む情報をインポートできます。これは問題ありませんが、置換を実行してスペースを削除すると、Excelは結果の文字列(1-4-9)を日付(1/4/09)に自動的に変換します。

考えられる解決策の1つは、情報をWordにコピーし、そこで検索と置換を行うことです。このソリューションの問題は、情報をExcelに貼り付けると、日付情報として再度解析され、必要な日付のシリアル番号に自動的に変換されることです。

唯一の満足のいく解決策は、Excelが結果の文字列を日付ではなく、文字列として絶対に処理するようにすることです。これは、次の2つの方法のいずれかで実行できます。元のテキストがアポストロフィまたはスペースで始まっていることを確認してください。これは、Excelの置換機能(操作する必要のあるデータに応じて)を使用するか、Wordの置換機能(はるかに用途が広い)を使用することで確認できます。

セルエントリの先頭にアポストロフィまたはスペースを使用すると、セルの内容から追加のスペースまたは文字を削除できます。結果が日付のようなテキストである場合、先頭のアポストロフィまたはスペースがテキストとしての処理を強制するため、Excelはそれをそのように解析しません。

タスクを実行する別の方法は、次の手順に従うことです。 (元のデータがA2:A101の範囲にあると想定します)。

。元のデータの右側に列を挿入します。

。セルB2に、次の数式を入力します。

=SUBSTITUTE(A2," ","")

。 B2の内容をB3:B101の範囲にコピーします。

。 B2:B101の範囲のセルを選択します。

。 Ctrl + Cを押して、範囲をクリップボードにコピーします。

。セルA2を選択します。

。 [編集]メニューから[形式を選択して貼り付け]を選択します。 Excelに[形式を選択して貼り付け]ダイアログボックスが表示されます。 (図1を参照)

。 [値]オプションが選択されていることを確認します。

。 [OK]をクリックします。

。列Bを削除します。

SUBSTITUTE関数の出力は常にテキストとして扱われるため、これらの手順は機能します。テキスト値をコピーして貼り付けると、Excelによる追加の解析が行われずにテキストとして扱われます。

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

このヒント(3019)は、Microsoft Excel 97、2000、2002、および2003に適用されます。Excel(Excel 2007以降)のリボンインターフェイス用のこのヒントのバージョンは、次の場所にあります。

link:/ excelribbon-Defeating_Automatic_Date_Parsing [Defeating Automatic DateParsing]