ExcelHome技术论坛

 找回密码
 免费注册

QQ登录

只需一步,快速开始

快捷登录

搜索
EH技术汇-专业的职场技能充电站 妙哉!函数段子手趣味讲函数 Excel服务器-会Excel,做管理系统 效率神器,一键搞定繁琐工作
HR薪酬管理数字化实战 Excel 2021函数公式学习大典 Excel数据透视表实战秘技 打造核心竞争力的职场宝典
让更多数据处理,一键完成 数据工作者的案头书 免费直播课集锦 ExcelHome出品 - VBA代码宝免费下载
用ChatGPT与VBA一键搞定Excel WPS表格从入门到精通 Excel VBA经典代码实践指南
查看: 6571|回复: 15

[求助] 在不打开源文件的情况下 如何读取源文件中的数据并写进备份数据的EXCELL的sheet里

[复制链接]

TA的精华主题

TA的得分主题

发表于 2018-8-13 10:16 | 显示全部楼层 |阅读模式



如图,   文件夹有两个excel 文件。 源文件是汇总表(原始数据存放)。 准备在备份文件里做一个botton,  单击之后,  不打开 【源文件】, 即可完成遍历源文件数据 并更新到【备份文件】里面。  源文件工作表的标题与备份文件的标题无差别。  


想法是:不打开 【源文件】的前提下, 在源文件中 B 列 查找 FAR No. :
1  如果, 备份文件中 A 列包含有相同的FAR No.  则用 源文件的数据 覆盖 备份文件的数据
2  如果, 备份文件中 A 列不包含新的FAR No.     则在 备份文件中录入新的数据




请 各位大神指点迷津~!   另有鲜花奉上!
Capture.PNG

在不打开源文件的情况下 如何读取源文件中的数据并写进备份数据的EXCELL的sheet里.7z

20.46 KB, 下载次数: 8

示例文件

TA的精华主题

TA的得分主题

发表于 2018-8-13 10:27 | 显示全部楼层

TA的精华主题

TA的得分主题

 楼主| 发表于 2018-8-13 10:39 | 显示全部楼层
microyip 发表于 2018-8-13 10:27
使用SQL读取,http://club.excelhome.net/thread-1310803-1-1.html 参考变通一下

谢谢EH侠圣~!  我之前尝试参照过用SQL的方法, 语句确实太晦涩,逻辑有些辩不清楚,如果可以的话, 侠圣可否送佛送到西嘛! 小弟不胜感激。
头像被屏蔽

TA的精华主题

TA的得分主题

发表于 2018-8-13 13:30 来自手机 | 显示全部楼层

TA的精华主题

TA的得分主题

 楼主| 发表于 2018-8-13 14:39 | 显示全部楼层
[广告] VBA代码宝 - VBA编程加强工具 · VBA代码随查随用  · 内置多项VBA编程加强工具       ★ 免费下载 ★      ★使用手册
朱荣兴 发表于 2018-8-13 13:30
其实,打开与不打开没关系,代码自动打开文件,获取数据后,代码关闭文件。
字典匹配获取数据,有则更新, ...

是的版主~!  我的初衷就是这样的想法, 就想用版主说的方法实现, 但是编写老是 bage 不断, 逻辑上跳不过...   所以前来求助~!

TA的精华主题

TA的得分主题

 楼主| 发表于 2018-8-14 17:05 | 显示全部楼层
microyip 发表于 2018-8-13 10:27
使用SQL读取,http://club.excelhome.net/thread-1310803-1-1.html 参考变通一下

.[F2].CopyFromRecordset oRead_Excel_Conn.Execute(sExcel_Select) '执行SQL语句并赋值到F2为起始的单元格区域


在用文件夹内打开其他的工作簿, 这句代码会报警,是怎么会事呢? C:\Users\cd1023116\Desktop\Capture.PNG

TA的精华主题

TA的得分主题

 楼主| 发表于 2018-8-14 17:06 | 显示全部楼层
juekasry 发表于 2018-8-14 17:05
.[F2].CopyFromRecordset oRead_Excel_Conn.Execute(sExcel_Select) '执行SQL语句并赋值到F2为起始的单元 ...

C:\Users\cd1023116\Desktop\Capture.PNGC:\Users\cd1023116\Desktop\Capture.PNG  图片如图
Capture.PNG

TA的精华主题

TA的得分主题

 楼主| 发表于 2018-8-15 10:29 | 显示全部楼层
microyip 发表于 2018-8-13 10:27
使用SQL读取,http://club.excelhome.net/thread-1310803-1-1.html 参考变通一下

sTitle = "FARNo,年龄,RequestorName,区域"    这样运行, 可以读取数据并写出来

sTitle = "FARNo.,年龄,Requestor Name,区域"   如果这样设置,  多了  .  和空格, 一开始运行  就报错,

在设置title时, 有特殊字符, 如标点符号等, 尽量不要放上去, 不管是中文还是英文,尽量一站式命名。  

调试很久,总结的丁点经验, 希望对后来的亲们有帮助

TA的精华主题

TA的得分主题

 楼主| 发表于 2018-8-15 10:50 | 显示全部楼层
本帖最后由 juekasry 于 2018-8-15 10:52 编辑

侠圣,  我参照你的代码重建一个示例,我的excel是 Excel 2016我在调试 同文件夹内 按SQL读取数据时,  就会有这种报警出现, 如图所示:

这个是那里设置出问题了么? 望侠圣释疑呢~!  
Capture.PNG

TA的精华主题

TA的得分主题

发表于 2018-8-15 12:33 | 显示全部楼层
juekasry 发表于 2018-8-15 10:50
侠圣,  我参照你的代码重建一个示例,我的excel是 Excel 2016我在调试 同文件夹内 按SQL读取数据时,   ...

这个问题,没附件怎么猜?你猜我猜,猜猜猜
您需要登录后才可以回帖 登录 | 免费注册

本版积分规则

手机版|关于我们|联系我们|ExcelHome

GMT+8, 2025-1-12 10:47 , Processed in 0.025762 second(s), 11 queries , Gzip On, MemCache On.

Powered by Discuz! X3.4

© 1999-2023 Wooffice Inc.

沪公网安备 31011702000001号 沪ICP备11019229号-2

本论坛言论纯属发表者个人意见,任何违反国家相关法律的言论,本站将协助国家相关部门追究发言者责任!     本站特聘法律顾问:李志群律师

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