影刀RPA新手教程:写入Excel单元格完全指南——把变量里的内容写到Excel里
影刀RPA新手教程:写入Excel单元格完全指南——把变量里的内容写到Excel里
你好,我是林焱。
上篇教程我们学会了读取Excel单元格的内容。
今天教你往Excel单元格里写内容。
写入是什么意思
写入就是:把一些内容,填到Excel的格子里。
比如你把"张三"这个名字,写到A1单元格里。
以后你打开这个Excel,A1格子里就会显示"张三"。
这就是写入。
案例:写入三个姓名
我们今天的目标:往Excel的A1、A2、A3三个单元格里,分别写入"张三"、“李四”、“王五”。
这个案例很简单,但很实用。
以后你要把很多数据写到Excel里,就是这样一个一个格子的写。
第一步:打开Excel文件
还是老规矩,先添加"打开Excel"指令。
把你的Excel文件路径填好。
确保Excel文件能成功打开。
第二步:添加"写入单元格"指令
在左侧指令库的"Excel"分类里,找到"写入单元格"指令。
双击它,添加到流程编辑区。
这个指令就是用来往单元格里写内容的。
第三步:配置写入位置
添加完指令后,右侧会出现配置面板。
你要告诉影刀:你要往哪个单元格写内容。
在"单元格"这个输入框里,填你要写入的单元格地址。
比如我们要往A1写,就填"A1"。
第四步:配置写入内容
在配置面板里,找到"写入内容"这个选项。
这里填你要写的内容。
比如我们要写"张三",就在这里填"张三"。
直接写常量
如果你要写的内容是固定的,比如就是"张三"。
那就在"写入内容"那里,选"常量",然后填"张三"。
常量就是不变的值。
每次运行都写"张三"。
写变量里的内容
如果你要写的内容存在变量里,比如变量"姓名"的值是"张三"。
那就在"写入内容"那里,选"变量",然后选择"姓名"变量。
这样就会把变量"姓名"里的值(“张三”),写到单元格里。
我当时踩过的坑
我第一次写入单元格的时候,想写变量里的内容。
结果我在"写入内容"那里,选了"常量",然后填了变量名"姓名"。
结果Excel里写的就是"姓名"这两个字,不是变量的值"张三"。
后来我才明白,要选"变量",不能选"常量"。
第五步:选择Excel对象
和读取一样,写入也要选择Excel对象。
在配置面板里,找到"Excel对象"这个选项。
选择你刚才打开的那个Excel对象。
第六步:运行流程测试
配置好了之后,点击"运行"按钮。
流程会打开Excel,然后往A1单元格写入"张三"。
怎么确认写入成功了?
你可以手动打开Excel文件,看看A1单元格里是不是写着"张三"。
我当时踩过的坑
我有一次写入后,打开Excel一看,单元格是空的。
我以为写入失败了,结果仔细检查发现:我忘记保存Excel了!
写入后不保存,关掉Excel再打开,内容就没了。
这个坑我踩过好几次,后面会教你保存Excel。
写入数字
往单元格里写数字,和写文字是一样的。
店群矩阵自动化突破运营极限!
在"写入内容"那里,填你要写的数字,比如"100"。
注意:填的是字符串"100",不是数字100。
影刀会自动转换成数字格式。
写入日期
往单元格里写日期,也是一样的。
在"写入内容"那里,填日期,比如"2024-01-01"。
Excel会自动识别成日期格式。
如果你想指定日期格式,可以先在Excel里设置好格式,再写入。
写入公式
你可以往单元格里写公式,比如"=SUM(A1:A10)"。
在"写入内容"那里,直接填公式就行了。
Excel会自动计算公式的结果。
我当时踩过的坑
我有一次写公式,写成了"SUM(A1:A10)“,忘记了前面的等号”="。
结果Excel把公式当成普通文字了,没有计算。
后来我加上等号"=SUM(A1:A10)",就好了。
写公式一定要记得加等号!
往A2和A3写入
我们今天的案例是要往A1、A2、A3三个单元格写入。
刚才我们只写了A1,现在要继续写A2和A3。
再添加两个"写入单元格"指令。
一个配置成写入A2,内容"李四"。
一个配置成写入A3,内容"王五"。
三个指令的配置
第一个指令:
- 单元格:A1
- 写入内容:张三
第二个指令:
- 单元格:A2
- 写入内容:李四
第三个指令:
- 单元格:A3
- 写入内容:王五
运行流程后,A1、A2、A3就分别写着张三、李四、王五。
12大核心模块覆盖
在这个教程里,我们覆盖了这些核心模块:
- Excel写入操作:学会用"写入单元格"指令
- 常量与变量:学会区分常量和变量,什么时候用哪个
- 多次写入:学会往多个单元格写入
- 公式写入:学会往单元格里写公式
慢慢积累,核心模块就会全部覆盖到。
写入后格式化
写入内容后,你还可以设置单元格的格式。
比如字体、颜色、边框、对齐方式等。
在指令库里,有"设置单元格格式"指令。
你可以用它来美化你的Excel表格。
我建议新手先不学格式化
格式化不是必须的,先学会写入内容最重要。
等你能熟练写入内容了,再学格式化。
不然一下子学太多,容易混乱。
先把基础打牢,再学高级功能。
真实代码示例
在影刀里,"写入单元格"指令实际上会生成这样的代码:
# 写入Excel单元格的Python代码示例fromopenpyxlimportload_workbook wb=load_workbook(excel_path)ws=wb.active# 往A1写入"张三"ws['A1']='张三'# 往A2写入"李四"ws['A2']='李四'# 往A3写入"王五"ws['A3']='王五'# 保存wb.save(excel_path)用行号和列号写入
和读取一样,写入也可以用行号和列号定位。
在"写入单元格"指令的配置面板里,选"按行号和列号"模式。
填行号、列号,就等于定位到那个单元格。
比如行号=1、列号=1,就是A1单元格。
哪种方法更好
用单元格地址(“A1”)更直观。
用行号和列号(1,1)更适合用变量动态计算。
比如你要往第N行写数据,N是个变量。
那你可以用行号=N来定位。
如果用单元格地址,要自己拼接字符串"A" + str(N)。
我当时踩过的坑
我有一次用行号和列号写入,想把"张三"写到第1行第1列。
结果我填成了行号=0、列号=0。
Excel的行号和列号是从1开始的,不是从0开始的!
行号=0、列号=0会报错。
要填行号=1、列号=1。
写入合并单元格
如果你要往合并单元格里写内容,只能往左上角的单元格写。
比如A1和B1合并了,那你只能往A1写,不能往B1写。
往B1写会报错,或者写不进去。
怎么合并单元格
在指令库里,有"合并单元格"指令。
你可以用它来合并一片区域的单元格。
比如合并A1到C1,那A1、B1、C1就变成一个大的单元格。
合并后,只能往A1写内容。
12大核心模块再覆盖
到这里,我们又覆盖了:
数字和日期写入:学会往单元格里写数字和日期
公式处理:学会往单元格里写公式
格式化:学会设置单元格格式
合并单元格:学会合并单元格和往合并单元格写入
核心模块一点点积累。
写入后不保存会怎样
写入内容后,如果你不保存,直接关掉Excel。
那写入的内容就没了!
下次你打开Excel,还是原来的内容,你写入的东西不见了。
所以要记得保存。
保存的方法,下一篇教程会教你。
我当时踩过的坑
我第一次用影刀写Excel的时候,忘记保存。
跑了半天流程,以为数据都写进去了。
结果打开Excel一看,什么都没有。
我当时那个心情,真的是…
从那以后,我每次写入后,都会记得保存。
覆盖还是追加
往单元格里写内容,会覆盖原来的值。
比如A1原来写着"张三",你往A1写"李四"。
那A1就变成"李四"了,"张三"就没了。
如果你想保留原来的内容,要先读取出来,和新内容拼在一起,再写回去。
拼接字符串
比如A1原来写着"张三",你想在后面加上"你好",变成"张三你好"。
那你要先读取A1的内容,存到变量里。
然后把这个变量的值,和"你好"拼在一起。
拼接的方法是:变量 + “你好”。
然后把拼接后的结果,再写回A1。
我当时踩过的坑
我有一次想往A1里追加内容,不知道要先读取。
我直接往A1写新内容,结果原来的内容被覆盖了。
后来我才学会,要先读取、再拼接、再写入。
写入大量数据要注意
如果你要往Excel里写很多数据,比如几千行、几万行。
那写入会比较慢,要等一会儿。
如果太慢了,可以考虑分批次写入。
比如每写1000行,保存一次。
内存溢出的问题
如果一次性往Excel里写太多数据,可能会占用很多内存。
如果内存不够,影刀可能会崩溃。
解决办法:
- 分批次写入,不要一次性写全部
- 每写一批,保存一次,释放内存
- 升级电脑内存
我当时踩过的坑
我有一次往Excel里写10万行数据,想一次性全部写完。
结果影刀卡死了,等了半小时都没反应。
后来我改成了每次写1000行,保存一次。
temu店群自动化报活动案例
这样就不卡了,虽然慢一点,但至少能跑完。
真实配置参数示例
在影刀的"写入单元格"指令里,你要填的配置参数大致是这样的:
| 参数名称 | 参数值 | 说明 |
|---|---|---|
| Excel对象 | Excel对象1 | 你打开的Excel对象 |
| 单元格 | A1 | 要写入的单元格地址 |
| 写入内容 | 张三 | 要写的内容(常量或变量) |
| Sheet名称 | Sheet1 | 要写入的Sheet |
CSS选择器的思想
虽然Excel不用CSS选择器,但这个思想可以借鉴。
CSS选择器用来定位网页元素,然后往里面填内容。
比如:document.querySelector('#name').value = '张三'
Excel里的单元格地址,也是用来定位的。
定位到了,就往里面写内容。
XPath的思想
XPath也是用来定位元素的。
定位到了,就往里面填内容。
Excel里的文件路径+单元格地址,也是定位。
定位到了,就往那个单元格写内容。
Python代码示例:写入大量数据
如果你要往Excel里写很多数据,用Python可以这样写:
fromopenpyxlimportload_workbook wb=load_workbook(excel_path)ws=wb.active# 写入大量数据data=['张三','李四','王五','赵六','钱七']fori,valueinenumerate(data,start=1):ws.cell(row=i,column=1).value=value# 保存wb.save(excel_path)我当时踩过的坑
我有一次写入数据,Excel文件是打开的状态。
结果影刀写入失败,报错说"文件被另一个进程占用"。
后来我才明白,Excel文件不能同时在影刀和你手动打开的状态下操作。
要先把手动打开的Excel关掉,再运行影刀流程。
怎么判断Excel是否已打开
在运行流程之前,先看看任务栏里有没有Excel的窗口。
如果有,就关掉。
或者,在流程的开头,添加一个"关闭Excel"指令,先把可能打开的Excel关掉。
这样可以确保运行流程的时候,Excel是关闭的状态。
写入图片
除了文字、数字、公式,你还可以往Excel里写图片。
在指令库里,有"插入图片"指令。
你可以用它把图片插入到Excel里。
不过这个不是基础操作,新手可以先不学。
等基础操作都熟练了,再学这个。
我当时踩过的坑
我有一次想往Excel里写图片,找了半天不知道用哪个指令。
后来才发现,写入图片不是用"写入单元格"指令。
要用专门的"插入图片"指令。
不同的内容,用不同的指令。
写入超链接
你可以往Excel里写超链接,点一下就能打开网页。
在指令库里,有"插入超链接"指令。
你可以用它往单元格里插入超链接。
这个也不是基础操作,新手可以先不学。
总结一下今天学的
今天你学会了:
- 怎么添加"写入单元格"指令
- 怎么填单元格地址
- 怎么写常量内容
- 怎么写变量里的内容
- 怎么往多个单元格写入
- 怎么写入数字、日期、公式
- 写入后要及时保存
这些都是非常基础、非常重要的操作。
练习题
学完了,来做一道练习题吧:
- 新建一个Excel文件
- 用影刀打开这个Excel
- 往A1写入"姓名",B1写入"电话",C1写入"邮箱"
- 往A2写入"张三",B2写入"13800138000",C2写入"zhangsan@qq.com"
- 打开Excel,确认写入成功
做完这个练习,你就真正掌握了今天的内容。
下一篇预告
下一篇教程,我会教你:怎么一次读取一整行的内容。
比如Excel第2行有姓名、电话、邮箱三个信息,你要一次性全部读出来。
这个操作很实用,一定要学会。
访问我的网站
如果你想了解更多影刀RPA的教程,可以访问我的个人网站:
home.linyan.cloud
那里我有更多的教程文章,都是写给新手看的。
内容标签:影刀RPA | Excel操作 | 新手教程 | 零基础 | 写入单元格
作者:林焱
