【问题标题】:Google Sheets App Script - Menu Item Link Purchase Order # to Packing Slip #Google 表格应用程序脚本 - 菜单项链接采购订单 # 到装箱单 #
【发布时间】:2016-01-24 04:55:30
【问题描述】:

我无法解决这个问题。

我有一张包含客户采购订单的表格。

这是一个非常简单的工作表示例: https://docs.google.com/spreadsheets/d/151h1XjB98NOBnO0otNaql3ASjK84CccZZ399dX4BMBM/edit?usp=sharing

我需要一种方法将装箱单 # 链接到订单表上客户采购订单 # 的匹配列表。

使用某种复制单元格值“Packing Slip!G2”,其中“orders!C:C”=“Packing Slip!G5”到“orders!D:D”

你认为这可行吗?

谢谢。

一直在捣乱,我把我一直在纠结的东西删掉了,把它留在这里早上,希望我能更有意义。

    function linkPackNumToPo() {
var activeSheet = SpreadsheetApp.getActive();
var ps = activeSheet.getValue("G2");
var po = activeSheet.getValue(G5);

}

所以我想不出一种方法来使用应用脚本执行与 vlookup 类似的操作。

所以现在我想我需要为每个链接到装箱单 # 和/或销售订单 # 的采购订单 # 写一个单独的记录。

我正在使用以下代码将日期、公司、采购订单、装箱单复制到另一张表中,作为将采购订单与装箱单匹配的关键。

还添加了一些清晰的内容来重置装箱单, 然后例程自动增加 P​​acking Slip #,使用 L3 作为键值。

    function clearPackingList() {
      var ss = SpreadsheetApp.getActive();
      var sheet = ss.getSheetByName("PackSlip");
      var source = sheet.getRange("N3:Q3");
      var target = ss.getSheetByName("OrderKey");
      var values = source.getValues();
      target.appendRow(values[0]);

    sheet.getRange('C6').clearContent();
    sheet.getRange('C9').clearContent();
    sheet.getRange('C10').clearContent();
    sheet.getRange('B11').clearContent();
    sheet.getRange('B12').clearContent();
    sheet.getRange('H6:H8').clearContent();
    sheet.getRange('F11').clearContent();
    sheet.getRange('G11').clearContent();
    sheet.getRange('H14:H77').clearContent();
   var cell = sheet.getRange("L3");
  var cellValue = cell.getValue();
  cell.setValue(cellValue + 1);
    };

接下来我需要添加一个菜单项,并弄清楚如何将采购订单与装箱单匹配到 ORDERS 表中,

还在研究如何打印单元格范围。

【问题讨论】:

  • 是的,这是可行的。你尝试了什么?
  • 我习惯于使用简单的工作表函数,但我不希望结果值是实时计算,而是设置。我在想可能有一种方法可以使用 getValue(packingslip 单元格)来 setValue(packingslip 值)到 copyTo(范围,在 Order 列中与客户 PO# 旁边匹配的单元格)
  • 添加到我尝试过的内容之上,但不是我真正想要的...

标签: google-apps-script google-sheets


【解决方案1】:

好的,所以我有一个工作'kludge'

    function onOpen() {
  var ui = SpreadsheetApp.getUi();
  // Or DocumentApp or FormApp.
  ui.createMenu('Custom Menu')
      .addItem('Submit Packing List', 'menuItem1')
      .addToUi();
}

function menuItem1() {
  var ss = SpreadsheetApp.getActive();
  var sheet = ss.getSheetByName("PackSlip");
  var source = sheet.getRange("N3:Q3");
  var target = ss.getSheetByName("psKey");
  var values = source.getValues();
  target.appendRow(values[0]);

    sheet.getRange('C6').clearContent();
    sheet.getRange('C9').clearContent();
    sheet.getRange('C10').clearContent();
    sheet.getRange('B11').clearContent();
    sheet.getRange('B12').clearContent();
    sheet.getRange('H6:H8').clearContent();
    sheet.getRange('F11').clearContent();
    sheet.getRange('G11').clearContent();
    sheet.getRange('H14:H77').clearContent();
  var cell = sheet.getRange("L3");
  var cellValue = cell.getValue();
  cell.setValue(cellValue + 1);
};

它将客户采购订单和装箱单作为 KEY 表提交到另一张表。

然后,我必须创建一个查找表来引用 psKey(装箱单密钥表),以返回与客户采购订单 # 上已发货的内容和延期交货的内容的匹配关系。

如果能找到一种方法直接写入订单表,将装箱单 ID 与客户采购订单 ID 匹配,但我无法找到使用谷歌应用脚​​本的方法,因为它超出了我的想象.

【讨论】:

    猜你喜欢
    • 2020-09-08
    • 1970-01-01
    • 2016-05-25
    • 1970-01-01
    • 1970-01-01
    • 2013-01-25
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多