1

interop.exceldllを使用してExcelファイルを作成しています。長い数字をテキストとして書き込んでいるときに問題が発生しています。

以下は私が使用しているコードです。アポストロフィを使用できますが、数式バーを見ると、セルが書式設定されていることがわかります。

数式バーに書式設定された値を表示せずに (を使用してnumberformat) Excel スプレッドシートに長い数値を書き込む他の方法はありますか?

worksheet.Cells[i, j] = "'" + dr[p];

//var startCell = (Excel.Range)worksheet.Cells[i, j]; 

//var endCell = (Excel.Range)worksheet.Cells[i, j]; 

//worksheetRange = worksheet.get_Range(startCell, endCell); 

//worksheetRange.NumberFormat = "#####"; 
4

2 に答える 2

0

1行で実行したい場合は、Text関数を使用できます。

例:

worksheets.Cells[i, j] = "=Text(" + dr[p] + ", \"#\"";

しかし、これは数値をテキストとして保存し、数式を数式バーに表示するため、おそらくあなたが探しているものではありません。その場合、user194076が提案したように、科学的記数法で表示したくない場合.NumberFormat = "@"; は使用できます。.NumberFormat = "#";

于 2012-10-10T00:43:59.613 に答える