首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >如何从google工作表单元格中获取HTML代码并呈现它,使其在另一个单元格中可见

如何从google工作表单元格中获取HTML代码并呈现它,使其在另一个单元格中可见
EN

Stack Overflow用户
提问于 2022-11-09 18:13:42
回答 1查看 33关注 0票数 -1

在google中,我试图从Tab2上的F列获取HTML代码,并将其呈现在同一行的标签2的G列上。

例如,我在F6中有下面的html代码,我想将它呈现给G6。一般来说,代码要长得多。

代码语言:javascript
运行
复制
<p>Dear Person,</p><p>the time is almost here!</p><p>Your itinerary is included below. Please print this and carry it with you.</p><p>Have a great day! </p>

我已经尝试了下面的另一个问题,但我的知识仍然非常少,我无法调整它的工作。

将HTML内容呈现给google电子表格

代码语言:javascript
运行
复制
var htmlTarget = current.getRange('A1').getValue();
var blob = Utilities.newBlob(htmlTarget, MimeType.HTML);
var id = Drive.Files.insert({title: "sample", mimeType: MimeType.GOOGLE_DOCS}, blob).id;
var message = DocumentApp.openById(id).getBody().getText();
DriveApp.getFileById(id).setTrashed(true); //  or Drive.Files.remove(id);
database.getRange('B1').setValue(message);
EN

回答 1

Stack Overflow用户

发布于 2022-11-10 00:25:51

从您的显示脚本中,我认为需要在您的情况下声明currentdatabase。我认为这可能是I was unable to adjust it to work.的原因。那么,下面的修改如何?

修改后的脚本1:

在此模式中,您的显示脚本将被修改。请设置您的工作表名称和请在高级谷歌服务上启用驱动器API

代码语言:javascript
运行
复制
function myFunction() {
  var current = SpreadsheetApp.getActiveSpreadsheet().getSheetByName("Sheet1"); // Please set your sheet name.
  var htmlTarget = current.getRange('F6').getValue();
  var blob = Utilities.newBlob(htmlTarget, MimeType.HTML);
  var id = Drive.Files.insert({ title: "sample", mimeType: MimeType.GOOGLE_DOCS }, blob).id;
  var message = DocumentApp.openById(id).getBody().getText();
  DriveApp.getFileById(id).setTrashed(true); //  or Drive.Files.remove(id);
  current.getRange('G6').setValue(message);
}

修改后的脚本2:

请设置您的工作表名称和请在高级谷歌服务上启用Sheets

代码语言:javascript
运行
复制
function myFunction() {
  var ss = SpreadsheetApp.getActiveSpreadsheet();
  var current = ss.getSheetByName("Sheet1"); // Please set your sheet name.
  var htmlTarget = current.getRange('F6').getValue();
  Sheets.Spreadsheets.batchUpdate({ requests: [{ pasteData: { html: true, data: `<table><tr><td>${htmlTarget}</td></tr></table>`, coordinate: { sheetId: current.getSheetId(), rowIndex: 5, columnIndex: 6 } } }] }, ss.getId());
}

修改后的脚本3:

请设置您的工作表名称和请在高级谷歌服务上启用驱动器API。另外,请安装Google脚本库的RichTextApp (作者我)。参考

代码语言:javascript
运行
复制
function myFunction() {
  var current = SpreadsheetApp.getActiveSpreadsheet().getSheetByName("Sheet1"); // Please set your sheet name.
  var htmlTarget = current.getRange('F6').getValue();
  var blob = Utilities.newBlob(htmlTarget, MimeType.HTML);
  var id = Drive.Files.insert({ title: "sample", mimeType: MimeType.GOOGLE_DOCS }, blob).id;
  var doc = DocumentApp.openById(id);
  var range = current.getRange('G6');
  var res = RichTextApp.DocumentToSpreadsheet({ range: range, document: doc });
  DriveApp.getFileById(id).setTrashed(true); //  or Drive.Files.remove(id);
  console.log(res);
}
  • 对于所有修改的脚本,都使用"F6“和"Sheet1”的"G6“单元格。检索"F6“的单元格值,呈现检索出来的HTML,并将该值放入单元格"G6”中。

参考文献:

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/74379575

复制
相关文章

相似问题

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