我擁有的
在谷歌電子表格上,我有一個范圍 (A1:B1),如下所示:
電子表格A | 表 1
| 一種 | 乙 | |
|---|---|---|
| 1 | 你好世界,這段文字是粗體的,而其余??的則不是 | 一些文字 |
我想要的是
我想將文本復制到一個單獨的谷歌電子表格中的范圍 (D3:E3) 中,因此它將具有相同的文本和相同的粗體部分,如下所示:
電子表格B | 表2
| D | 乙 | |
|---|---|---|
| 3 | 你好世界,這段文字是粗體的,而其余??的則不是 | 一些文字 |
我現在擁有的
我目前正在使用.setValues()它導致僅復制純文本(.copyTo()只能在同一個電子表格中使用),如下所示:
電子表格B | 表2
| D | 乙 | |
|---|---|---|
| 3 | Hello world,這段文字加粗,其余不加粗 | 一些文字 |
供參考的(簡化)代碼:
function syncToSpreadsheetB(sheet1) { // found under spreadSheetA
var spreadSheetB = SpreadsheetApp.openById('spreadSheetB_id');
var sheet2 = spreadSheetB.getSheetByName('sheet2');
if (sheet2 === null) return;
sheet2.getRange(3,4,1,2).setValues(sheet1.getRange(1,1,1,2).getValues());
}
我知道有RichTextValue類,但不確定如何使用它來滿足我的需要。
uj5u.com熱心網友回復:
在您的情況下,如何使用 RichTextValue?這在你的問題中也已經提到了。那么,下面的示例腳本怎么樣?
示例腳本:
function myFunction() {
var spreadsheetA = SpreadsheetApp.openById('###');
var sheet1 = spreadsheetA.getSheetByName("Sheet1");
var srcRange = sheet1.getRange(1,1,1,2); // This range is from your script.
var srcRichTextValues = srcRange.getRichTextValues();
var spreadSheetB = SpreadsheetApp.openById('spreadSheetB_id');
var sheet2 = spreadSheetB.getSheetByName('sheet2');
sheet2.getRange(3,4,1,2).setRichTextValues(srcRichTextValues); // This range is from your script.
}
參考:
- getRichTextValues()
- setRichTextValues(values)
轉載請註明出處,本文鏈接:https://www.uj5u.com/shujuku/339393.html
