以编程方式打印出电子表格中的单元格和注释内容

时间:2018-10-23 12:02:59

标签: excel google-sheets google-sheets-api libreoffice

我有一个包含工作表的电子表格(最初在Google表格中,但是我可以导出到.xlsx或.ods),我想以编程方式打印出第一行的单元格值以及每个单元格中的注释。例如。请参见工作表(https://docs.google.com/spreadsheets/d/1DGsrEKrxfQm8sRzfLyqu4z6Hx8eDdkVDiYlN3Rwve6A/edit?usp=sharing)下面的屏幕截图:

enter image description here

第1行中有3个单元格,每个单元格中都有一个注释。

我想以编程方式打印出此工作表的内容,以使它们看起来像这样:

Cell:"field1",Comment:"key=foobar"
Cell:"field2",Comment:"key=bar"
Cell:"field3",Comment:"key=foobar"

有什么想法吗?

1 个答案:

答案 0 :(得分:1)

function getNotes_(fileId, sheetName, rangeA1)
{
  var data = [];
  var file = SpreadsheetApp.openById(fileId);
  var sheet = file.getSheetByName(sheetName);
  var range = sheet.getRange(rangeA1);  
  var values = range.getValues();
  var notes = range.getNotes();  
  var getResult_ = function(value, i) { data.push( 'Cell:"' + value + '",Comment:"' + rowNotes[i] +'"') }; 
  var rowNotes = [];
  for (var i = 0, l = values.length; i < l; i++)
  {
    rowNotes = notes[i];
    values[i].forEach(getResult_);    
  }  
  return data;    
}