簡體   English   中英

CONCATENATE 在使用 c# 的互操作 excel 中不起作用

[英]CONCATENATE is not working in interop excel using c#

在此處輸入圖片說明

我正在使用 C# 以編程方式使用公式 =CONCATENATE(A1,":",B1)-CONCATENATE(C1,":",D1) 創建 excel,但在以編程方式添加分號 ":" 時出錯

幫我解決這個問題

錯誤:HRESULT:0X800A03EC

OSheet.Cells[1,1] = 10;
OSheet.Cells[1,2] = 30;
OSheet.Cells[1,3] = 5;
OSheet.Cells[1,4] = 25;
OSheet.Cells[1,5].Formula = "=CONCATENATE(A1,:,B1)-CONCATENATE(C1,:,D1)";
OSheet.Cells[1,5].NumberFormat = "hh:mm";

嘗試這個:

OSheet.Cells[1,5].Formula = "=CONCATENATE(TEXT(A1-C1,"00"),":",TEXT(B1-D1,"00"))";

請參閱文本函數文檔

您所說的適用於 Excel 的內容與您在 C# 代碼中編寫的內容不同:

C#: "=CONCATENATE(A1,:,B1)-CONCATENATE(C1,:,D1)"
XL:  =CONCATENATE(A1,":",B1)-CONCATENATE(C1,":",D1)

看到不同? 在你的 C# 中,你已經去掉了冒號周圍的引號

讓你的 c# 像:

OSheet.Cells[1,5].Formula = "=CONCATENATE(A1,\":\",B1)-CONCATENATE(C1,\":\",D1)";

在引號前加一個斜杠告訴 c#“這個引號是字符串的一部分,而不是結束字符串”

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM