C++ の ofstream を介して計算を ODS (Apache OpenOffice) ファイルにエクスポートすると、数値が正しく表示されますが、その特定の ODS ファイルでは計算を行うことができません。
たとえば、A1 で 0.9191、A2 で 0.5757 を追加しようとすると、=SUM(A1:A2) はゼロを返します。
セルをフォーマットすることでこれを解決しようとしましたが、これまでのところうまくいきませんでした。助言がありますか?ありがとうございました。
編集:エクスポートジョブを実行するコードの部分。
string datafolder; datafolder = "c:/Users/cousinvinnie/Desktop/Code Vault/ArmaTut3/" + Jvalue;
string graph_path = datafolder + "/Graphavgs.ods"; ofstream graphavgs; graphavgs.open(graph_path);
for(int ctr = 0; ctr<cycledata; ctr++){
cyclepoints = (howmanyDC + 1) * (ctr + 1);
graphavgs<<(ctr + 1)<<" ";
calcguy = sum((wholedata.row(cyclepoints))) / nextgenpop;
secondbiggiesavg(ctr) = -log(calcguy);
graphavgs<<secondbiggiesavg(ctr)<<" ";
calcguy = sum((thirdbiggest.row(cyclepoints))) / nextgenpop;
thirdbiggiesavg(ctr) = -log(calcguy);
graphavgs<<thirdbiggiesavg(ctr)<<" ";
calcguy = sum((matrixavgs.row(cyclepoints))) / nextgenpop;
avgmatrixdata(ctr) = -log(calcguy);
graphavgs<<avgmatrixdata(ctr)<<" "<<endl;
}
graphavgs.close();
このコードは、Graphavgs.ods ファイルを作成します。私が持っているそのファイルに
1 0.111753 0.182331 0.358724
2 0.147015 0.259202 0.48334
3 0.195855 0.362397 0.648719
4 0.25348 0.476696 0.839261
5 0.314722 0.618828 1.0633
6 0.420704 0.857286 1.37501
7 0.536699 1.1179 1.69503
8 0.76933 1.56382 2.13464
9 0.90525 1.89921 2.42443
10 1.15678 2.41533 2.82584
現在、これらの数値は数値として扱われません。=SUM(A1:A2) のような関数を実行しようとすると、戻り値はゼロになります。
=LN(A1) を実行すると、#VALUE が返されます。
解決済み: すべてのドットを検索してカンマに置き換えます。