COM接口来实现php批量替换Excl

$excelPath = "e:\\excel";

$total = $success = $jump = 0;

$objExcel = new COM("excel.application") or die("不能打开Excel应用程序");

$handle = opendir($excelPath); //打开当前目录

readdir($handle); //排除"."

readdir($handle); //排除 ".."

//循环读取文件

while ($file = readdir($handle)) {

$total++;

//生成源文件名

$fileName = $excelPath . DIRECTORY_SEPARATOR .$file;

$pathinfo = pathinfo($fileName);

if(strtolower($pathinfo['extension']) != 'xls'){

echo "已跳过:".$file.",文件格式不对";

$jump++;

continue;

}

echo "正在替换文件:".$file."\n";

if(file_exists($fileName)){

if(!$objExcel->Application->WorkBooks->Open($fileName)){

echo $file."打开失败,跳过!";

$jump++;

continue;

}

}

else{

echo $fileName."文件不存在\n";

$jump++;

continue;

}

$totalRow = $objExcel->ActiveSheet->UsedRange->Rows->Count;

for($i=1;$i<=$totalRow;$i++){

$keyword = trim($objExcel->Worksheets(1)->Range("A".$i)->Value);//获取到值

if(in_array($keyword,$replaceIn)){//判断后在这里进行替换

$objExcel->Worksheets(1)->Range("B".$i)->Value = $replaceRule[$keyword];

$objExcel->Worksheets(1)->Range("B".$i)->Font->Name = "黑体";

$objExcel->Worksheets(1)->Range("B".$i)->Font->Size = 12;

}

}

if(!$objExcel->ActiveWorkBook->Saved)

{

$objExcel->ActiveWorkBook->save();

echo $file."保存成功!\n";

$success++;

}

//关闭工作簿

$objExcel->Quit();

}

echo "\n全部替换完成!共{$total}个,成功{$success}个,跳过{$jump}个!\n";

//清空对象

$objExcel = null;

exit;

需要注意的是,尽量把这个程序放在命令行下跑,别放在IIS或APACHE下面,因为是调用的系统组件COM,所以可能会出现各种奇葩的错误,这些错误的原因都是因为权限不足引起的,所以直接用管理员身份运行命令行,在命令行下跑就能把权限问题排除在外!

php 替换文件内容,php批量替换Excel文件内容相关推荐

  1. Python学习---根据excel的内容自动批量修改excel名称

    工作中遇到需要根据excel中的某个单元格(cell)内容自动批量修改excel文件名称的需求,写了一个小脚本. import os from openpyxl import load_workboo ...

  2. 效率办公 | 用python批量处理excel文件(删列、替换)【必会】

    当小白想利用python批量处理excel文件时,很难将课程中分散的知识点组合成自己所需,处理文件不知道该用哪个函数,还经常会出现奇奇怪怪的问题,最后搞得好恼火也失去了学下去的信心. 下面我们来看下在 ...

  3. 如何同时对多个 Word 的内容进行批量替换

    概要:Word 类型的文档在我们办公过程当中经常会碰到,比如说各种合同.标书等等都是会先用 Word 进行编辑的.往往这类的 Word 文件数量会非常的庞大,并且内容也非常的多,非常的复杂.有时候我们 ...

  4. 如何在手机端从多个Excel文件多个Sheet中搜索某一内容,多个excel文件批量查找

    如何在手机端从多个Excel文件多个Sheet中搜索某一内容,多个excel文件批量查找 今天介绍一个在线工具:e.anyoupin.cn 比如: 多个年度的项目信息,每年一张工作簿.现在需要查找某些 ...

  5. 如何利用VBA批量更改Excel文件的内容

    心得(5):利用VBA批量更改Excel文件的内容 问题:因为接受的所有Excel文件都是相同格式的,但是有个单元格的内容就是需要,主办方来更改,如下所示: 获奖级别,得由主办方来更改,但是如果一个一 ...

  6. 批量生成Excel文件,可以按模板进行自动生成

    目录 一.文件目录结构 二.编辑生成名单(名单.xlsx) 三.编辑模板(模板.xlsx) 四.生成操作(批量生成Excel.exe) 五.下载地址 软件描述:根据Excel模板 和 生成名单 可以批 ...

  7. ExcelToOracle:批量导入Excel文件到Oracle数据库的自动化工具

    ExcelToOracle:批量导入Excel文件到Oracle数据库的自动化工具 简介 ExcelToOracle 是一个可以批量导入excel到数据库(mysql/oracle/sqlserver ...

  8. excel表格末尾添加一行_教你使用Python批量读写excel文件

    当面对成百上千个excel文件,需要重复读写时,你会不会很头大呢? 与其花费好几天去做这些繁琐无意义的操作,不如学学python如何批量读写excel文件,几分钟就能搞定一整天的活! 使用xlrd库读 ...

  9. 零代码编程:用ChatGPT将PDF文件的表格批量转为Excel表格

    电脑中有几百个PDF文件,文件内容格式一致,每个PDF文件第一页是一个表格.想把这几百个PDF文件里面的表格都提取出来,转为excel表,该怎么办? 打开ChatGPT(一定要用GPT4,编程能力很强 ...

  10. 如何批量合并Excel文件和工作表 - Excel合并器使用教程

    Excel是人们用于创建日常工作表和统计信息的最流行的工具,在我们工作中经常接触到Excel的XLSX和XLS格式文件.不少朋友应该有时会发现,管理太多的Excel工作表和文件是一件头疼的事情,经常需 ...

最新文章

  1. HRFormer 多分辨率Transformer 参数骤降,性能更强
  2. linux的备份和恢复命令,Linux基本命令——备份与恢复文档
  3. 浅析综合布线系统中检测双绞线的几种方式
  4. 反射中getDeclaredConstructors和getConstructors两个方法的区别,然后setAccessible什么时候用,作用是什么?
  5. 前端学习(3123):react-hello-react之props的基本使用
  6. 面试常考题:不调用库函数,怎样实现字符串操作函数?
  7. php网页电话外呼,一种基于web网页端的电话外呼方法与流程
  8. 词法分析器|编译原理|陈火旺
  9. 成功粉碎北信源监控程序vrvedp_m.exe ,vrvrf_c64.exe,svchost.exe,vrvrf_c.exe
  10. 用计算机进行废物回收,回收旧的显示器以进行废物利用
  11. 武汉最牛批的互联网基本都在这了~
  12. mib browser使用
  13. 天使投资人杨宁:百度轻应用让移动时代很多不可能成为可能
  14. 腾讯云OCR文字识别的使用
  15. 如何在阿里云免费 SSL 证书到期后更新证书操作步骤
  16. 自建题库刷题小程序,添加更丰富的练习设置,模糊选项、自动切题、夜间模式、答题音效、答对移除错题、练习完交卷后统计正确率
  17. python string转float原来如此简单,集合set的操作,对于动态变化的训练集操作
  18. html5 粒子动画效果制作,8款惊艳的HTML5粒子动画特效
  19. wifi连接速率 linux,Deepin linux 操作系统提高 WiFi 速度
  20. 读书笔记-人脉是设计出来的:关键篇

热门文章

  1. 柚缘航海:Tik Tok电商带货怎么玩?
  2. 抱薪者说丨从零开始学开发 985研究生的社区漂流
  3. 数据结构与算法JAVA语言描述第六章部分课后习题参考答案
  4. WPS加载项是如何实现调用业务系统JS的 WPS通信原理
  5. UE4/UE5 代理使用介绍
  6. 个人用过的觉得很好的开发工具(不定时更新)
  7. html表格中加横线,Word表格中如何加一条横线
  8. 火车站旁开小超市能挣多少钱?
  9. 基本数据结构(int,布尔,字符串,列表)
  10. Selenium系列教程 - 文件上传