3

Google スプレッドシート API を介してプログラムで作成されたワークシートに単純なヘッダー行を追加する方法は? 既に作成されたヘッダー行に行を追加する方法についてのみ言及しているドキュメントを理解するのは非常に困難です。セル ベースのフィードを初めて使用してヘッダー行を追加する場合、

// Fetch the cell feed of the worksheet.
  CellQuery cellQuery = new CellQuery(worksheet.CellFeedLink);
  CellFeed cellFeed = service.Query(cellQuery);

  // Iterate through each cell, updating its value if necessary.
  foreach (CellEntry cell in cellFeed.Entries)
  {
    if (cell.Title.Text == "A1")
    {
      cell.InputValue = "name";
      cell.Update();
    }
    else if (cell.Title.Text == "B1")
    {
      cell.InputValue = "age";
      cell.Update();
    }
  }

cellFeed.Entries が 0 であるため、このコードは機能しません。したがって、制御は for ループに入りません。(4) 行と (10) 列のワークシートを既に追加しました。しかし、単純なヘッダー行 (列として) を最初に入力し、次に他の行 (これらの列の値として) を入力するにはどうすればよいでしょうか? 私はすでにほとんど質問されていないことを知っていますが、どれにも答えがありません.この API の実装が複雑である理由を理解するのは非常にイライラし、困難です?

4

2 に答える 2

5

答えは次のとおりです。

        CellQuery cellQuery = new CellQuery(worksheet.CellFeedLink);
        CellFeed cellFeed = _SpService.Query(cellQuery);

        CellEntry cellEntry = new CellEntry(1, 1, "name");
        cellFeed.Insert(cellEntry);
        cellEntry = new CellEntry(1, 2, "age");
        cellFeed.Insert(cellEntry);
        cellEntry = new CellEntry(1, 3, "address");
        cellFeed.Insert(cellEntry);

次に、上記のヘッダー行に一致するドキュメントに従って、行を下に追加できます。

于 2012-10-30T12:58:31.873 に答える
1

デフォルトでは、セル クエリは空のセルを返しません。この設定をオーバーライドする必要があります。

次のようにコードを編集します。

CellQuery cellQuery = new CellQuery(worksheet.CellFeedLink);
cellQuery.ReturnEmpty = ReturnEmptyCells.yes;
CellFeed cellFeed = _SpService.Query(cellQuery);
于 2012-12-24T12:54:07.373 に答える