win7出现ActiveX component can't create object

gzhjic 2013-01-30 10:21:42
将listview的内容导出到excel保存,下面这段代码在xp的excel2003下正常导出,可到win7的excel2007
就出现ActiveX component can't create object提示,不知道是怎么回事,网上找了很久,都没有解决方案。

Dim i As Integer
Dim ex As Object
Dim ExWbook As Object
Dim ExSheet As Object
Set ex = CreateObject("Excel.Application")
Set ExWbook = Nothing
Set ExSheet = Nothing
Set ExWbook = ex.Workbooks().Add
Set ExSheet = ExWbook.Worksheets("Sheet1")
ex.Range("A" & 1).Value = ListView1.ColumnHeaders(1).Text
ex.Range("B" & 1).Value = ListView1.ColumnHeaders(2).Text
ex.Range("C" & 1).Value = ListView1.ColumnHeaders(3).Text
ex.Range("D" & 1).Value = ListView1.ColumnHeaders(4).Text
ex.Range("E" & 1).Value = ListView1.ColumnHeaders(5).Text
ex.Range("F" & 1).Value = ListView1.ColumnHeaders(6).Text
ex.Range("G" & 1).Value = ListView1.ColumnHeaders(7).Text
ex.Range("H" & 1).Value = ListView1.ColumnHeaders(8).Text
For i = 2 To ListView1.ListItems.Count + 1
ex.Range("A" & i).Value = ListView1.ListItems(i - 1).Text
ex.Range("B" & i).Value = ListView1.ListItems.Item(i - 1).SubItems(1)
ex.Range("C" & i).Value = ListView1.ListItems.Item(i - 1).SubItems(2)
ex.Range("D" & i).Value = ListView1.ListItems.Item(i - 1).SubItems(3)
ex.Range("E" & i).Value = ListView1.ListItems.Item(i - 1).SubItems(4)
ex.Range("F" & i).Value = ListView1.ListItems.Item(i - 1).SubItems(5)
ex.Range("G" & i).Value = ListView1.ListItems.Item(i - 1).SubItems(6)
ex.Range("H" & i).Value = ListView1.ListItems.Item(i - 1).SubItems(7)
Next i
ExSheet.Columns("A:H").AutoFit
On Error Resume Next
ExWbook.SaveAs App.Path & "\Excel\" & Format(Now, "yyyy-mm-dd") & ".xls"
On Error GoTo 0
ex.Quit
Set ex = Nothing
...全文
9954 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
gzhjic 2013-01-31
  • 打赏
  • 举报
回复
现在单位只有xp系统,注册表看到的CLSID数值是一致的,CurVer的默认值是 "Excel.Application.11" ,家里用的是ghost win7的旗舰版,Office 2007 安装不完全的可能性很大,软件用户也碰到ActiveX component can't create object相同的错误问题,晚上回去再用你的方法查一下注册表,我想最好的情况当然是叫用户重装office2007,不过现在win7开始流行了,每台电脑都叫重装office也不是办法,只能看这个方法如果行的通的话,弄个注册表文件让用户点击注册一下,或者有什么工具修复一下更好。当然如果有朋友知道有其他原因导致这个错误,也有解决办法就更好了。
Tiger_Zhao 2013-01-31
  • 打赏
  • 举报
回复
·首先,确保 Office 2007 是用了完全安装而不是即需安装。
·其次,用 regedit 确认一下([I]手边只有 Office 2003,版本号是推测出来的,以实际为准[/I]):
 HKEY_CLASSES_ROOT\Excel.Application\CurVer\ 的默认值应该是 "Excel.Application.12" 吧;
 HKEY_CLASSES_ROOT\Excel.Application.11\CLSID\ 和 HKEY_CLASSES_ROOT\Excel.Application\CLSID\ 的默认值应该相同。
·再次,可能是插件问题,参考 http://ju.xin.blog.163.com/blog/static/38296516201010241011775/
·还有,用 Word.Application 创建对象试试是否成功,确定是否仅仅是 Excel 的问题。
gzhjic 2013-01-31
  • 打赏
  • 举报
回复
试过了,问题依旧。就是不引用microsoft excel excel 11.0 或12.0
gzhjic 2013-01-31
  • 打赏
  • 举报
回复
引用 5 楼 SupermanKing 的回复:
你的程序本来就是依赖别人的程序而开发的,这种依存关系对运行环境的要求是很高的,所以出现这种问题一点也不奇怪,应该是在你使用这种技术架构的时候就应该预料到的问题。要想彻底解决这类问题,最好的办法就是不要这样依存别人的程序来开发自己的软件,这就不会受限于别人程序是否安装或安装的版本环境问题。对于Excel 的数据文件应用,其实网上也有很多源码可以直接处理的,比如 WEB 开发上就有可以动态生成 Exc……
说得很有道理。
现在还是人类 2013-01-31
  • 打赏
  • 举报
回复
你的程序本来就是依赖别人的程序而开发的,这种依存关系对运行环境的要求是很高的,所以出现这种问题一点也不奇怪,应该是在你使用这种技术架构的时候就应该预料到的问题。要想彻底解决这类问题,最好的办法就是不要这样依存别人的程序来开发自己的软件,这就不会受限于别人程序是否安装或安装的版本环境问题。对于Excel 的数据文件应用,其实网上也有很多源码可以直接处理的,比如 WEB 开发上就有可以动态生成 Excel 文件供别人下载数据的东西,而且还开源。起码我见过 PHP 的,支持 Excel、Word、PDF 等等多种文件的动态处理模块,里面有完整的文件格式和相关处理类的代码,如果把这种东西转换成自定义类来处理,就不用担心别人的系统是否安装 Office 或安装的版本是什么而烦恼了,当然也不会出现这种组件、控件的版本或兼容性问题。
worldy 2013-01-30
  • 打赏
  • 举报
回复
在工程中,对excel的引用去除
内容概要:本文提出了一种基于改进扩散模型的高海拔地区新能源高波动出力场景生成方法,并提供了完整的Python代码实现。该方法针对高海拔地区风能、光伏等新能源出力波动剧烈、不确定性高的特点,通过优化扩散模型的结构与训练策略,有效捕捉历史数据的概率分布特征与时序相关性,从而生成高质量、多样化的出力场景。文中详细阐述了模型的数学推导、网络架构设计、损失函数优化及采样算法改进,并通过实验证明其在拟合精度、场景多样性与稳定性方面优于传统生成模型,为电力系统在高比例新能源接入下的规划、调度与风险评估提供了可靠的场景输入支持。; 适合人群:具备一定Python编程能力和机器学习基础,从事新能源发电预测、电力系统分析、智能优化、场景生成等方向研究的科研人员、高校研究生及工程技术人员。; 使用场景及目标:①用于高海拔地区风电、光伏出力的不确定性建模与多场景生成;②支撑含高渗透率新能源的电力系统随机优化调度、鲁棒决策与风险评估;③为相关学术研究、论文复现与算法改进提供可运行的技术方案与代码基础; 阅读建议:建议读者结合所提供的完整资源(代码、数据集、说明文档)进行实践操作,重点关注扩散模型的前向加噪与反向去噪过程的设计细节,以及如何将其适配于新能源时序数据的生成任务,通过参数调优与对比实验深入理解模型的生成机制与性能边界。
内容概要:本文围绕基于静态约束法的配电网电动汽车接入容量评估展开研究,提出了一种在新型电力系统背景下评估主动配电网对电动汽车承载能力的方法。研究通过构建数学模型,结合潮流计算与关键约束条件(如电压越限、线路过载等),量化分析配电网可承受的最大电动汽车充电负荷容量,旨在识别规模化电动汽车接入带来的潜在运行风险,并为电网规划与运行提供科学依据。文中配套提供了完整的Matlab代码实现,便于仿真验证与结果复现。此外,该研究与分布式光伏承载力评估、电动汽车可调能力分析等方向形成技术联动,展现了多主题协同的研究体系。; 适合人群:具备电力系统分析基础理论知识及Matlab编程能力的高校研究生、科研机构研究人员,以及从事新能源并网、智能配电网规划与运行等相关领域的工程技术人员。; 使用场景及目标:①用于学术研究中的模型复现与论文撰写支撑;②评估实际配电网中电动汽车大规模接入的可行性与安全边界,指导充电基础设施布局;③作为高校教学案例,帮助学生深入理解电网承载力评估的核心原理、建模方法与仿真技术; 阅读建议:建议结合文中提及的相关研究方向(如二阶锥规划、多面体聚合方法等)进行对比学习,充分利用所提供的Matlab代码与网盘资料开展仿真实验,重点关注约束条件的设定逻辑与潮流计算模块的实现细节,以深化对评估模型机理与工程应用价值的理解。

7,788

社区成员

发帖
与我相关
我的任务
社区描述
VB 基础类
社区管理员
  • VB基础类社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧