无法使用 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);

查看结果。希望对你有所帮助。