首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >检查最高数字并从网格单元格复制文本。

检查最高数字并从网格单元格复制文本。
EN

Stack Overflow用户
提问于 2020-02-12 14:39:22
回答 1查看 66关注 0票数 0

我对脚本很陌生,但是我需要为我的RPG游戏系统在Google页面脚本中做以下工作.

  1. 检查单元格中最高的一位数.即,1 6 3 2 4=6最高数字。在这些数字组合的另一cell.
  2. Depending中,即6-2、3-4、1-6等,应复制另一张表格中特定单元格中的文本。
  3. 在每个组合单元格中具有1至6垂直,1至6水平的不同文本。
  4. 复制的文本应输入第一张表格中的特定单元格(即E10)。

有人能帮我吗?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2020-02-13 02:13:40

根据我所看到的,您希望检查两个单元格中的最高值,并希望使用这个值在一个值表中得到一个准确的位置,并在另一个单元格上得到该值。

该问题可分三个阶段解决。1)在细胞中找到最高值。2)检索表中的值。3)用检索到的值设置目标单元格。

1)取决于是否在单元格中找到最高值,指的是:

A1 1例,A2 5例,A3 3例,A4 4例。并从A2细胞中提取5。

答:您的解决方案将使用Array.prototype.concat.apply() & Math.max.apply().和.split()的组合参考:Array.prototype.concat.apply() B:您的解决方案将使用getRange(行、列、行、列)& Math.max.apply()的组合

你会得到两个最大值的输出,我们称之为A和B

2)要检索该值,您需要getRange(A,B) & getValue(),并取决于表的位置,您可能需要修改A和B以获得表中的正确位置。

3)要在单元格E1中设置值,需要使用setValue()函数。

您可能想尝试使用上面的句柄自己解决这个问题。它们可能不是最有效的,但应该起作用。或者,下面有一个示例脚本供您使用。存在一个缺陷,如果值输入大于表,则不会标记错误。因此,要么限制用户的输入,要么创建一种方法来标记错误:)

代码语言:javascript
复制
function SetRetrievedValue() {
  var app = SpreadsheetApp;
  var ss = app.getActiveSpreadsheet();
  var sheet = ss.getActiveSheet();
  //var cellcontent1 = sheet.getRange(2,1,6,1).getValues(); use this if its a range of cells you are searching
  var cell1 = sheet.getRange(1,1).getDisplayValue(); //gets value as string
  var cellcontent1 = cell1.split(""); // splits up the string individually
  var newcellcontent1 = Array.prototype.concat.apply([], cellcontent1); // flatten the array
  var maxNum1 = Math.max.apply(null, newcellcontent1); //gets the max value in the array

  // repeat of cell 1
  var cell2 = sheet.getRange(1,2).getDisplayValue(); 
  var cellcontent2 = cell2.split("");
  var newcellcontent2 = Array.prototype.concat.apply([], cellcontent2);
  var maxNum2 = Math.max.apply(null, newcellcontent2);


  var tablecell = ss.getSheetByName("Table sheet").getRange(maxNum1,maxNum2).getValue(); //retrieve the value based on the corresponding max value
  sheet.getRange(1,3).setValue(tablecell); // sets the cell C1 as the value retrieved from the table
}
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/60190789

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档