4.52 FAQ-705 如何将一组单元格的数据复制到另一组单元格中?

Last Update: 7/15/2018

LabTalk 支持多种将一组单元格的数据复制到另一组单元格中的编程方法(例如,copydata X-Function)。在兼具速度和灵活性的考虑,利用 range -v 选项开关是最好的方法之一。利用 -v 开关,您可以将一组单元格定义为 range,然后将其值赋予给另一个同样利用 -v 定义的 range。这两个单元格组不需要具有相同的“形状”,只要它们包含的单元格数目相同就可以(注意,请在赋值之前确认目标单元格组是存在的)。

// Import sample data into a new book
fname$=system.path.program$ + "\Samples\Statistics\abrasion_raw.dat"; 
newbook;
impasc;
// Define a block as column A & B, all rows
range -v ra1 = 1[1]:2[end];
// Create a new sheet
newsheet;
// Define a block as one column, using the ra1 block size
range -v ra2 = 1[1:ra1.GetSize()];
// Assign the values in the first block to the second block
ra2 = ra1;
col(1)[L]$ = Combined;

range -v 的另一个优势是您可以在复制数据的过程中执行数学运算

range -v rs=[Book2]1!1:3;
range -v rt=[Book1]1!1:3;

rt=rs*10 //multiply elements in rs by 10 and output to rt

Keywords:copy, copydata, range, Set Values, math, 复制,设定值,数学