Javascript в Google Spreadsheet - PullRequest
       6

Javascript в Google Spreadsheet

1 голос
/ 13 декабря 2010

Я пытаюсь написать простой скрипт для электронной таблицы документов Google. Две ссылки ниже представляют собой скриншот листов, для которых я пишу сценарий.

Я все еще учусь писать JavaScript, но это то, что я пытаюсь сделать. Я надеюсь это имеет смысл. Кто-нибудь может мне помочь с этим?

get.sheetbyname "Purchase Orders"
    If column E  == "stock"
    var qty == three cells left of cell e
    var partNum == two cells left of cell e

get.sheetbyname "Parts inventory"
    loop through column C until you find partNum
    var oldQty == number(two cells left of partNum)
    add qty to oldQty to get new qty

1006 *

1 Ответ

1 голос
/ 13 декабря 2010

Вам обязательно нужно быстро ознакомиться с JavaScript.Это мощный язык, и его легко выбрать, но он имеет много отличий от других популярных, казалось бы, родственных языков (например, Java, C и т. Д.).Как только вы освоитесь с JavaScript, вам нужно ознакомиться с API-интерфейсами служб таблиц Google Apps Script .Эти API-интерфейсы позволяют создавать сценарии для электронных таблиц Google Docs, как и для других приложений для работы с электронными таблицами, таких как Microsoft Excel.Для начала откройте рабочую книгу и выберите «Инструменты> Сценарии> Редактор сценариев ...», затем создайте новый именованный сценарий.

Вот начало того, что вы пытаетесь сделать конкретно.Похоже, вы пытаетесь выяснить, сколько заказов на покупку существует для какого-либо предмета и обновить количество в инвентарном листе.

function updateInventoryFromPurchaseOrders() {
  var purchaseOrders = {}; // A mapping of partNumber => quantity.
  var ss = SpreadsheetApp.getActiveSpreadsheet();
  var sheet = ss.getSheetByName('Purchase Orders');
  if (sheet) {
    // For each row, if column "E" == "stock" then set partNumber, quantity.
    purchaseOrders[partNumber] = quantity;
  }
  // Now purchaseOrders should look like {'SL249':5, 'ML50':1, 'MWF':1}

  sheet = ss.getSheetByName('Inventory');
  if (sheet) {
    // For each row, set quantity, partNumber.
    var purchased = purchaseOrders[partNumber];
    // Set column "A" value = quantity + purchased
  }
}

Для чтения и записи значений из отдельных ячеек вам потребуется использовать Диапазоны , документы, ссылки на которые приведены выше, должны дать вам достаточно примеров, чтобы помочь вам в этом.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...