回答:
追加しようとしている「数字」は、数字ではなくテキストです。
これは、それらを適切にマークするソースからロードされた場合、またはセルの形式が正しく設定されていない場合に発生します。
残念ながら、それを修正する簡単な2クリックの方法はありません。セルのフォーマットを変更しても、それに応じて内容が変更されることはないため、各値を再入力する必要があります。ただし、修正する方法はいくつかあります。
CSVまたはExcel以外のソースからデータをロードした場合、最も簡単なのはそれを繰り返し、列を「テキスト」ではなく「数値」としてマークすることです。これを行うには、空白のExcelシートを開き、[データ] / [テキストから]に移動して、ウィザードに従います。ステップ3/3では、必ず列をクリックして、「テキスト」ではなく「一般」を選択してください。
これがオプションでない場合は、ヘルパー列(値のすぐ隣など)を使用して、=VALUE(E1)
F1に入力し、それを下にコピーできます。この列は合計可能になります。次に、列Fの内容と「貼り付け/値のみ」を列Eにコピーし、ヘルパー列を削除することもできます。
3番目のオプションは、これを配列式に結合することです:代わりに(の代わりに)=SUM(E10:E13)
使用=SUM(VALUE(E10:E13))
して押します。CTRLSHIFTENTERENTER
=SUM(VALUE(E10:E13))
エラーを返すため、解決策はありません。しかし、ファイルは正確にcsvにフォーマットされています。それを.xlsxに変換し、列を数値としてマークする方法はありますか。再びThx
=SUM(VALUE(E10):VALUE(E13))
={SUM(VALUE(E10:E13))}
ます{}
。1.の詳細な説明も追加しました
私はフランス語ロケールのExcelも使用しており、CSVファイルでこの問題に直面することがよくあります。他の人が説明したように、フランスの数値は小数点を小数点として使用し、同様の数値123.45
はExcelでテキストとして解釈されます。
これを回避する最も速い方法は、に置き換える.
こと,
です。Davidが提案したように、Find / Replaceを使用してすばやく実行できます。
この問題に頻繁に直面する人は、次のコード(この回答を基に作成)を使用して、個人用ワークブックに保存し、リボンのボタンに割り当てることができます。
Sub Comas2Dots()
Application.ScreenUpdating = False
If (MsgBox("Do you want to replace comas by dots?", vbOKCancel) = vbOK) Then
Const sTEMPCOMMA = "|comma|"
Const sTEMPDOT = "|dot|"
Const sCOMMA = ","
Const sDOT = "."
If TypeName(Selection) = "Range" Then
With Selection
.Replace sCOMMA, sTEMPCOMMA, xlPart
.Replace sDOT, sTEMPDOT, xlPart
.Replace sTEMPCOMMA, sDOT, xlPart
.Replace sTEMPDOT, sCOMMA, xlPart
End With
End If
End If
Application.ScreenUpdating = True
End Sub
この不必要な問題を経験している人々に役立つことを願っています!
追加のドキュメント
追加しようとしているセルは数値として表示されません。これは、完全なストップ "。"があるためです。数値の小数部を表すカンマ「、」ではありません。
これを修正するはるかに速い方法は、検索機能(Ctrl F)を使用して、すべての "。"を検索することです。「、」に置き換えます。
.
と,
。もちろん、これはフランス語(および同様の)ロケールでのみ適用されます。
,
は小数点ではなく、であるから.
です。のような値123.45
はテキストであり、合計することはできません。これは「数値がテキストとして保存されている」状況ではなく、「テキストがテキストとして保存されている」状況であるため、提案したように1を掛けてもこの場合は機能しません。ドットを昏睡に置き換えると、Excelはテキストを実数に変換します(これはフランス語のロケールにのみ適用されます)。