似乎有很多建議可以做到這一點,其中一些似乎可行。如何使用C#將文本值轉換爲Excel 2003中的數值(使用C#存儲的數字)012#
實際上,我想要將Excel工作表中的文本值更改爲一個數字(這是一個已設置爲以文本形式存儲的數字,並在其旁邊具有綠色菱形的單元格)。
這webpage詳細介紹瞭如何解決在Excel中的問題,通過UI,和我錄這下面的宏(但是這是VBA)...
包括值設置到其自身:
Range allCellsRng;
string lowerRightCell = "AZ500";
allCellsRng = wSheet.get_Range("A1", lowerRightCell).Cells;
foreach (Range cell in allCellsRng)
{
if (cell.Value2.ToString().Length > 0)
{
cell.Value2 = cell.Value2;
}
}
這是一個記錄的VB宏,這說明了什麼會解決這個問題,但我有在C#中表示此問題:
ActiveCell.FormulaR1C1 = "0"
Range("A1").Select
Selection.Copy
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlAdd, SkipBlanks _
:=False, Transpose:=False
Range("A1").Select
如果這個宏能夠正常工作,那麼它就可以工作,因爲它和宏一模一樣...... – Ian 2010-01-27 14:53:00
這個代碼只在你把第一個單元格的值設置爲0時才起作用,但是在其他任何情況下它只會把它加起來,產生不正確的結果 – Jim 2016-02-24 06:19:57