c# - Graph API 工作簿 - 更新范围 - 数字格式的美国设置
问题描述
我正在使用 Microsoft Graph API 来更新 Excel 工作表中的值。还指定了给定单元格的数字格式。数字格式是货币的自定义格式。格式取自excel。
示例:$ 10,740,081 - 不带小数的美元
excel 文件放置在具有非美国语言设置的 SharePoint 上。
我的代码是:
private const string MoneyFormat = "_($* #,##0_);_($* (#,##0);_($* \"-\"??_);_(@_)";
...
WorkbookSessionInfo sessionInfo = await client.Sites["{siteId}"].Drives["{driveId}"].Items["{fileId}"].Workbook.CreateSession(true).Request().PostAsync();
var workbookRange = new WorkbookRange
{
Values = JToken.FromObject(values), // [["10", "100"]]
Formulas = JToken.FromObject(formulas), // [[null, null]]
NumberFormat = JToken.FromObject(numberFormat) // [[MoneyFormat, MoneyFormat]]
};
var worksheetRangeRequest = client.Sites["{siteId}"].Drives["{driveId}"].Items["{fileId}"].Workbook.Worksheets["{sheetName}"].Range("A1:B1").Request();
AddWorkbookSessionIdHeader(worksheetRangeRequest, sessionInfo.Id);
await worksheetRangeRequest.PatchAsync(workbookRange);
var closeRequest = client.Sites["{siteId}"].Drives["{driveId}"].Items["{fileId}"].Workbook.CloseSession().Request();
AddWorkbookSessionIdHeader(closeRequest, sessionInfo.Id);
await closeRequest.PostAsync();
如果我打开结果 excel 文件,指定的数字格式几乎是正确的,除了货币符号。货币符号$
被忽略,它显示与我的本地设置相关的货币符号。
如果我检查应用于单元格的数字格式的详细信息,格式会有点不同
_(Kč* # ##0_);_(Kč* (# ##0);_(Kč* "-"??_);_(@_)
有什么办法可以强制 Graph API 使用指定的货币符号?
解决方案
推荐阅读
- android - 使用数据绑定膨胀类 org.xwalk.core.XWalkView 时出错
- angular - 在打字稿文件中获取表单数据,如数组
- vba - Excel VBA:是否可以在不使用 Windows 剪贴板的情况下在工作簿之间复制和粘贴图片?
- linux - 在linux中升级tesseract版本
- python - 具有 UTC 偏移量和时区的字符串中的 UNIX 时间
- android - 如何为以太网接口rockchip YC android 9.0设置静态IP地址?
- next.js - 我的 Next.JS 应用程序构建时间有什么问题?
- javascript - 我的代码 nhpdf.js 出错有人帮助我
- javascript - 我可以使用 CreateElement() i javascript 创建 html 元素吗?
- python - 在 Python 中将请求片段重组为 OOP 类