我在使用 C# 和 Google API 更新 Google 电子表格中的边框时遇到困难。我已授权访问该工作表并且可以更新单元格内容。我只是不明白我错过了什么。我按照this示例建模了我的尝试。
Here is my code:
public void FormatTest()
{
Request request = new()
{
UpdateBorders = new()
{
Range = new()
{
SheetId = 0,
StartRowIndex = 3,
EndRowIndex = 3,
StartColumnIndex = 0,
EndColumnIndex = 5
},
Bottom = new()
{
Color = new()
{
Blue = 1
},
Style = "DASHED",
Width = 1
},
InnerHorizontal = new()
{
Color = new()
{
Blue = 1
},
Style = "DASHED",
Width = 1
}
}
};
var batchRequest = new BatchUpdateSpreadsheetRequest()
{
Requests = [request]
};
var update = service.Spreadsheets.BatchUpdate(batchRequest, ScheduleSheetId);
var response = update.Execute();
}
当我检查电子表格时,没有任何变化,尽管也没有错误,这让我认为我只是未设置某些属性。
嗯,一如既往,当我感到沮丧并发布公开问题后,我立即找到了答案。问题出在我的射程上。我假设 GridRange 参数的工作方式类似于 A1 表示法,其中应用于第 3-3 行将简单地应用于第 3 行:
起始行索引 = 3, 结束行索引 = 3
相反,它似乎忽略了范围中的第一行并应用于后续的每一行。例如:
起始行索引 = 3, 结束行索引 = 5
这会将更新应用于第 4 行和第 5 行中的单元格,但最重要的是 不 第 3 行。我希望这对某人有帮助!