无法使用 Google Sheets C# API 编写列
Unable to write columns using Google Sheets C# API
我正在尝试使用 c# Google Sheets API 通过下面的代码将信息输入我的 Google Sheets,但它只是按行输入,我想将其作为列输入。有办法吗?
valueRange.Values = new List<IList<object>> { objectList };
appendRequest = service.Spreadsheets.Values.Append(valueRange, SpreadsheetId, range);
appendRequest.ValueInputOption = SpreadsheetsResource.ValuesResource.AppendRequest.ValueInputOptionEnum.USERENTERED;
appendResponse = appendRequest.Execute();
我在下面修复了您的代码。看来您的 valueRange.Values 转换不正确。
public static AppendValuesResponse InsertColumnLine(this SheetsService service, string spreadsheetId, string range, params object[] columnValues)
{
// convert columnValues to columList
var columList = columnValues.Select(v => new List<object> { v });
// Add columList to values and input to valueRange
var values = new List<IList<object>>();
values.AddRange(columList.ToList());
var valueRange = new ValueRange()
{
Values = values
};
// Create request and execute
var appendRequest = service.Spreadsheets.Values.Append(valueRange, spreadsheetId, range);
appendRequest.ValueInputOption = SpreadsheetsResource.ValuesResource.AppendRequest.ValueInputOptionEnum.USERENTERED;
return appendRequest.Execute();
}
使用扩展 InsertColumnLine
方法。
// Sample!A1 => Sample is workseet name, A1 cell feild
_sheetsService.InsertColumnLine(_chickenOptions.Debug.SpreadSheetId, "Sample!A1", 1, 2, 3, 4, 5);
查看结果。希望对你有所帮助。
我正在尝试使用 c# Google Sheets API 通过下面的代码将信息输入我的 Google Sheets,但它只是按行输入,我想将其作为列输入。有办法吗?
valueRange.Values = new List<IList<object>> { objectList };
appendRequest = service.Spreadsheets.Values.Append(valueRange, SpreadsheetId, range);
appendRequest.ValueInputOption = SpreadsheetsResource.ValuesResource.AppendRequest.ValueInputOptionEnum.USERENTERED;
appendResponse = appendRequest.Execute();
我在下面修复了您的代码。看来您的 valueRange.Values 转换不正确。
public static AppendValuesResponse InsertColumnLine(this SheetsService service, string spreadsheetId, string range, params object[] columnValues)
{
// convert columnValues to columList
var columList = columnValues.Select(v => new List<object> { v });
// Add columList to values and input to valueRange
var values = new List<IList<object>>();
values.AddRange(columList.ToList());
var valueRange = new ValueRange()
{
Values = values
};
// Create request and execute
var appendRequest = service.Spreadsheets.Values.Append(valueRange, spreadsheetId, range);
appendRequest.ValueInputOption = SpreadsheetsResource.ValuesResource.AppendRequest.ValueInputOptionEnum.USERENTERED;
return appendRequest.Execute();
}
使用扩展 InsertColumnLine
方法。
// Sample!A1 => Sample is workseet name, A1 cell feild
_sheetsService.InsertColumnLine(_chickenOptions.Debug.SpreadSheetId, "Sample!A1", 1, 2, 3, 4, 5);
查看结果。希望对你有所帮助。