Coryは、AccessからExcelにインポートされた情報を使用して、条件付き書式を希望どおりに機能させるのに問題があります。特定の列にインポートされるデータは、テキスト( “17 U”など)または数値(32など)のいずれかです。条件付き形式は、セル内の値がゼロより大きいかどうかを確認します。ゼロより大きい場合、値には下線が引かれます。

Excelはテキスト(17 U)をテキストとして扱うだけでなく、数値(32)も扱うため、これはインポートされたデータでは正しく機能しません

テキストとして。 Excelは列の各セルのデータ形式を変更するのではなく、列全体をテキストとして扱うため、これは理にかなっています。

この問題を解決する方法はいくつかあります。 1つは、使用している数式を条件付き形式で変更することです。値がゼロより大きいかどうかを確認する代わりに、次の式を使用します(条件付きチェックを「FormatIs」に設定します):

=VALUE(E3) > 0

この数式は、VALUE関数を使用して、セルE3の内容を確認します。内容が数値の場合(Excelでテキストとしてフォーマットされている場合でも)、数式はTrueを返し、フォーマットの条件が満たされます。 E3の内容が実際にテキストである場合(「17U」のように)、数式は#VALUEエラーを返します。これは条件を満たさず、フォーマットは適用されません。

別のアプローチは、Excelにインポートされたセルを評価させ、必要に応じてそれらを数値に変換することです。これを行う簡単な方法は次のとおりです。

。データをインポートした後、インポートしたばかりの範囲外の列から空白のセルを選択します。

。 Ctrl + Cを押します。これにより、セルの内容(何もない)がクリップボードにコピーされます。

。 Excelで評価するセルを選択します。たとえば、テキスト値とテキストとしてフォーマットされた数値を含む列を選択します。

。リボンの[ホーム]タブを表示します。

。貼り付けツールの下にある下向き矢印をクリックし、[形式を選択して貼り付け]を選択します。 Excelに[形式を選択して貼り付け]ダイアログボックスが表示されます。 (図1を参照)

。 [追加]ラジオボタンをクリックします。

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

手順3で選択したすべてのセルにクリップボードの内容を「追加」するだけでした。セルに実際のテキストが含まれている場合、それらのセルには何も起こりませんでした。それらは同じままで、テキストとして扱われます。セルに数値が含まれている場合、Excelはそれを数値として扱い、ゼロを追加します。この値は、数値としてセルに戻され、実数として扱われます。つまり、以前に設定した条件付き書式テストは、テキストとして扱われなくなったため、これらのセルで問題なく機能するはずです。

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

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

link:/ excel-Conditional_Formatting_with_Data_Imported_from_Access [Accessからインポートされたデータを使用した条件付き書式]