【问题标题】:VBA conversion to Google scriptVBA 转换为 Google 脚本
【发布时间】:2012-09-21 08:34:07
【问题描述】:

如何引用 Google 脚本中的特定单元格进行循环,并将值返回到特定单元格,如下面的 VBA 示例所示。

这将如何用 Google 脚本编写?

For j = 1 To 20 Step 2

For i = 1 To 20

g = Worksheets("Notes").Cells(i + 15, j + 2).Value

h = Worksheets("Notes").Cells(4, j + 2).Value

l = Worksheets("Notes").Cells(5, j + 2).Value

If Worksheets("Notes").Cells(i + 15, j + 2).Value <> "" Then

等等

【问题讨论】:

    标签: javascript google-apps-script spreadsheet google-sheets


    【解决方案1】:

    您可以在 javascript 中使用简单的 for 循环来遍历单元格

    //get the sheet object
    var sheet = SpreadsheetApp.getActiveSpreadsheet().getSheetByName('Notes');
    
    for(j=0; j<=20; j++){
    for(i=0; i<=20; i++){
    g = sheet.getRange(i + 15, j + 2).getValue();
    //...
    //...
    //and so on
    }
    }
    

    【讨论】:

    • 你好。谢谢你的回答。
    【解决方案2】:

    这是一个例子:

    var sheet = SpreadsheetApp.getActiveSpreadsheet().getSheetByName('Notes');
    var lastrow=sheet.getLastRow();
    var lastcolumn=sheet.getLastColumn();
    
    //In Google Script you should specify the range you want I/O from
    var range=sheet.getRange(1,1,lastcolumn,lastrow);
    
    //Return 2D Array for all range Values
    var all = range.getValues();
    
    for(var j=0; j<=20; j++){
    for(var i=0; i<=20; i++){
    
    //Return each value
    var all = range.getCell(i + 15, j + 2).getValue();
    
    }
    }
    

    【讨论】:

      【解决方案3】:

      更好的方法是不要每次都调用 getCell,因为您已经获得了数据。

      var sheet = SpreadsheetApp.getActiveSpreadsheet().getSheetByName('Notes');
      var lastrow=sheet.getLastRow();
      var lastcolumn=sheet.getLastColumn();
      
      //In Google Script you should specify the range you want I/O from
      var range=sheet.getRange(1,1,lastcolumn,lastrow);
      
      //Return 2D Array for all range Values
      var values = range.getValues(); //2D array of row and column values
      
      for(var r=0; r < values.length; r++){
        for(var c=0; c < values[r].length; c++) { 
      
        //Return each value
        var value = value[r][c]; //row, column
      
        }
      }
      

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2021-04-15
        • 2023-03-26
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多