1.可以按单元格写入 如: a1:d1 a3:c3 d3:h3 单行写入 暂不能多行写入 推荐使用
2.可以按序号写入 如: 1,2,6 写入第1\2\6行 单行写入 暂不能多行写入 从第一列开始写入 推荐使用
3.1可以自由写入使用 Range.End()实现 如:留空 从第一列开始写入 第1行,第2行不能为空 需要注意前两行和空行
如:Range("A1").End( xlDown).Row+1 xlUp 1.向上 xlDown 2.向下 单行写入
3.2可以自由写入使用ActiveCell()实现 如:0 从当前选择活动单元格开始写入 推荐使用
写入数据格式为: 文件1-文件2-文件3-文件4-文件5-文件6 要用"-"连接
数据最好 和 单元格数据大小一样(a1:f1)

//.cs 文件类型,便于外部编辑时使用
// 引用必要的命名空间
using Excel = Microsoft.Office.Interop.Excel;
// Quicker将会调用的函数。可以根据需要修改返回值类型。
public static void Exec(Quicker.Public.IStepContext context)
{
var gg = context.GetVarValue("g3") as String; // 读取动作里的变量值
string[] bb = gg.Split('|');//需要用单引号
int b0 = Convert.ToInt32(bb[0]);
int i = bb[1].Split('-').Length;//需要用单引号
Excel.Application excelApp = (Excel.Application)System.Runtime.InteropServices.Marshal.GetActiveObject("Excel.Application");
Excel.Workbook wb = excelApp.ActiveWorkbook as Excel.Workbook;
Excel.Worksheet ws = wb.ActiveSheet as Excel.Worksheet; // 获取当前活动工作表,显示转化用【as】进行转换,获取工作表
switch (b0)
{
case 1:
Excel.Range range1 = ws.Range[bb[2]] as Excel.Range;
range1.Value2 = toy2(bb[1]);
break;
case 2:
string b1 = "a"+bb[2];
Excel.Range range2 = ws.Range[b1].Resize[1, i] as Excel.Range;
range2.Value2 = toy2(bb[1]);
break;
default:
if (bb[2] == "0"){
Excel.Range range3 = excelApp.ActiveCell.Resize[1, i] as Excel.Range;
excelApp.ActiveCell.Offset[1,0].Activate();
range3.Value2 = toy2(bb[1]);
}else{
int i1 = ws.Range["a1"].get_End(Excel.XlDirection.xlDown).Row+1;
string b2 = "a"+ i1;
Excel.Range range4 = ws.Range[b2].Resize[1, i] as Excel.Range;
range4.Value2 = toy2(bb[1]);
}
break;
}
}
//Application.ActiveCell.Offset(1,0).Activate()
static string[,] toy2(string input)
{
string[] parts = input.Split('-');//需要用单引号
string[,] data = new string[1, parts.Length];
for (int i = 0; i < parts.Length; i++)
{
data[0, i] = parts[i];
}
return data;
}