[新手上路]批处理新手入门导读[视频教程]批处理基础视频教程[视频教程]VBS基础视频教程[批处理精品]批处理版照片整理器
[批处理精品]纯批处理备份&还原驱动[批处理精品]CMD命令50条不能说的秘密[在线下载]第三方命令行工具[在线帮助]VBScript / JScript 在线参考
返回列表 发帖

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

请教各位老师,如何使用脚本命令给xls这类表格文件添加数据?

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

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

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

貌似要求有些多,不知道这样的要求能达到吗?

本帖最后由 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

评分人数

TOP

idwma 发表于 2022-1-21 23:28


实在惭愧!看起来不是bat的命令,不知老师写出来的是什么脚本代码,我要如何使用?

TOP

不知道问题是不是太刁难了,感觉自己问的问题比较偏门,好像这里没什么人需要处理xls文件的。

TOP

回复 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

评分人数

微信:flashercs
QQ:49908356

TOP

本帖最后由 toyerspollors 于 2022-1-29 01:36 编辑

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

谢谢flashercs、idwma的帮助。

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

如果在执行以上命令之前,我要先删除B列,2行,再删除G7单元格,不知道如何修改添加相关命令,望老师指教!

TOP

Win32 OLE

TOP

Win32 OLE

TOP

回复 6# toyerspollors
  1. $worksheet.Columns("B").Delete()
  2. $worksheet.Rows(2).Delete()
  3. $worksheet.Range("G7").ClearContents()
复制代码
去微软官方网站 学习vba
微信:flashercs
QQ:49908356

TOP

返回列表