找回密码
 注册
搜索
[新手上路]批处理新手入门导读[视频教程]批处理基础视频教程[视频教程]VBS基础视频教程[批处理精品]批处理版照片整理器
[批处理精品]纯批处理备份&还原驱动[批处理精品]CMD命令50条不能说的秘密[在线下载]第三方命令行工具[在线帮助]VBScript / JScript 在线参考
查看: 23213|回复: 8

[文本处理] 如何使用脚本命令给xls这类表格文件添加数据?

[复制链接]
发表于 2022-1-20 20:04:47 | 显示全部楼层 |阅读模式
请教各位老师,如何使用脚本命令给xls这类表格文件添加数据?

比如目录下有好一堆xls文件,

我想批量处理表格,在表格的横列的G前面插入1列(最好可以自定义列数),然后再竖行6插入1行(最好可以自定义列数),

接着在单元格F5输入内容“批处理之家”,最好这个单元格能添加背景黄颜色,字体加粗,红颜色。

貌似要求有些多,不知道这样的要求能达到吗?
发表于 2022-1-21 23:28:32 | 显示全部楼层
本帖最后由 idwma 于 2022-1-22 20:22 编辑

  1. #@&cls&powershell "type %~s0|out-string|iex"&pause&exit
  2. $r='a5'
  3. $c='f1'
  4. $d='f5'
  5. $t='abc'
  6. dir 123.xls|%{
  7. $a=(new-object -comobject excel.application).workbooks.open($_.fullname)
  8. $b=$a.sheets.item(1)
  9. $b.range($r).EntireRow.insert()
  10. $b.range($c).Entirecolumn.insert()
  11. $row=$b.range($d).row
  12. $column=$b.range($d).column
  13. $b.cells.item($row,$column)=$t
  14. $b.Range($d).interior.colorindex=6
  15. $b.Range($d).font.colorindex=3
  16. $b.Range($d).font.bold=$true
  17. $a.save()
  18. $a.close()
  19. }
复制代码

评分

参与人数 1技术 +1 收起 理由
toyerspollors + 1 乐于助人

查看全部评分

 楼主| 发表于 2022-1-22 20:22:03 | 显示全部楼层
idwma 发表于 2022-1-21 23:28


实在惭愧!看起来不是bat的命令,不知老师写出来的是什么脚本代码,我要如何使用?
 楼主| 发表于 2022-1-28 20:01:54 | 显示全部楼层
不知道问题是不是太刁难了,感觉自己问的问题比较偏门,好像这里没什么人需要处理xls文件的。
发表于 2022-1-29 00:21:00 | 显示全部楼层
回复 4# toyerspollors
  1. <#*,:&cls
  2. @echo off
  3. cd /d "%~dp0"
  4. powershell -NoProfile -ExecutionPolicy RemoteSigned -Command ". ([ScriptBlock]::Create((Get-Content -LiteralPath "%~0" -ReadCount 0 | Out-String ))) "
  5. pause
  6. exit /b
  7. #>
  8. # 功能: 处理当前目录的xls文件

  9. $r = '6:6' # 要插入的行
  10. $c = 'G:G' # 要插入的列
  11. $d = 'F5'  # 更改单元格
  12. $t = '批处理之家' # 更改的内容

  13. $xlShiftDown = -4121
  14. $xlShiftToRight = -4161
  15. $xlFormatFromLeftOrAbove = 0
  16. $xlFormatFromRightOrBelow = 1

  17. $excel = New-Object -ComObject excel.application
  18. $excel.Visible = $true #显示excel窗口
  19. $excel.DisplayAlerts = $false
  20. Get-ChildItem .\*.xls, .\*.xlsx | ForEach-Object {
  21.   $workbook = $excel.workbooks.open($_.fullname)
  22.   $worksheet = $workbook.sheets.item(1) # 操作第一表格 Sheet1
  23.   $worksheet.range($c).insert($xlShiftToRight, $xlFormatFromLeftOrAbove) #插入列
  24.   $worksheet.range($r).insert($xlShiftDown, $xlFormatFromLeftOrAbove) #插入行
  25.   $range = $worksheet.Range($d)
  26.   $range.Value() = $t #更改内容
  27.   $range.interior.colorindex = 6 #单元格背景色
  28.   $range.font.colorindex = 3 #单元格字体色
  29.   $range.font.bold = $true #加粗
  30.   [void]$workbook.save() #保存xls
  31.   $workbook.close()
  32. }
  33. $excel.Quit()
复制代码
保存为 a.bat

评分

参与人数 1技术 +1 收起 理由
toyerspollors + 1 乐于助人

查看全部评分

 楼主| 发表于 2022-1-29 01:32:29 | 显示全部楼层
本帖最后由 toyerspollors 于 2022-1-29 01:36 编辑

原来2楼的也是批处理命令,我还以为是其他的东东,所以没测试,真知识真是没底了,好多东西都没接触过。

谢谢flashercs、idwma的帮助。

不知道老师写出来的这些命令有没有基础入门学习资料的链接啊?

如果在执行以上命令之前,我要先删除B列,2行,再删除G7单元格,不知道如何修改添加相关命令,望老师指教!
发表于 2022-1-29 09:08:33 | 显示全部楼层
Win32 OLE
发表于 2022-1-29 09:08:45 | 显示全部楼层
Win32 OLE
发表于 2022-1-29 09:57:56 | 显示全部楼层
回复 6# toyerspollors
  1. $worksheet.Columns("B").Delete()
  2. $worksheet.Rows(2).Delete()
  3. $worksheet.Range("G7").ClearContents()
复制代码
去微软官方网站 学习vba
您需要登录后才可以回帖 登录 | 注册

本版积分规则

Archiver|手机版|小黑屋|批处理之家 ( 渝ICP备10000708号 )

GMT+8, 2026-3-20 11:24 , Processed in 0.019841 second(s), 8 queries , File On.

Powered by Discuz! X3.5

© 2001-2026 Discuz! Team.

快速回复 返回顶部 返回列表