ExcelHome技术论坛

 找回密码
 免费注册

QQ登录

只需一步,快速开始

快捷登录

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

[求助] 对外部数据源进行复制、新增、删除

[复制链接]

TA的精华主题

TA的得分主题

发表于 2018-9-6 14:05 | 显示全部楼层 |阅读模式
问题来源:如图,我用MS query获取外部数据源导出到“原始数据”表中,本来在“原始数据”表中插入3列空白列,以此来手工备注对应的行。但是有个很麻烦的问题出现了,就是,当我刷新外部数据源的时候,数据源本身会新增或者删除某行数据,这样导致不管的话,插入列就会导致和第一次的行数不对齐,如图3所示。
VBA求助:能否用VBA来复制第一次数据源表,然后当数据源再次刷新的时候,能够让3列空白列也随着原始数据变化。第一次填写的空白列内容也能随着数据源新增、删除相对于行数。
大神们,我不知道这个在编程叫什么,能否给个参考也行。先谢谢大神了
1.jpg
2.jpg

图3

图3

外部数据复制.rar

100 KB, 下载次数: 10

TA的精华主题

TA的得分主题

 楼主| 发表于 2018-9-7 09:08 | 显示全部楼层
是不是VBA很难实现这样的功能?大神们。。

TA的精华主题

TA的得分主题

发表于 2018-9-7 09:29 | 显示全部楼层
看不懂你想干什么,不如直接用文字描述你想要达到什么效果,并结合你的操作详细描述一下过程

TA的精华主题

TA的得分主题

发表于 2018-9-7 10:17 | 显示全部楼层
本帖最后由 魂断蓝桥 于 2018-9-7 10:19 编辑
exc-led 发表于 2018-9-7 09:08
是不是VBA很难实现这样的功能?大神们。。

主要是没看懂

我试着理解一下。

你有一个erp数据,在一个目录中,你需要把这个表格的数据提取出来(多次)。

erp 数据 模拟
时间    姓名
111     A
222     B
第一次取的时候取所有数据,并自动添加三列
取到表格中的数据就是
时间 姓名 新增列1 新增列2 新增列3
111  A
222  B
你需要在这个表中进行操作,操作后比如是
时间 姓名 新增列1 新增列2 新增列3
111  A      a
222  B                    c          d

单你再次去erp中取数据的时候,该如何做,你这个没有说清楚。
我举个例子。

erp数据现在是时间 姓名
333  C
444  D
这时候只要在原来的表中新增这两条就行(因为没有重复的)
时间 姓名 新增列1 新增列2 新增列3
111  A      a
222  B                    c          d
333  C
444  D

如果erp现在的数据是
时间 姓名
222  C
333  D
你的excel表中如何处理呢?
你的excel表中已经有了 222与333的数据了?




TA的精华主题

TA的得分主题

 楼主| 发表于 2018-9-8 08:52 | 显示全部楼层
魂断蓝桥 发表于 2018-9-7 10:17
主要是没看懂

我试着理解一下。

首先,谢谢你能过来看这个问题,但我没有提示出数据是ERP,你却一语道破是ERP,真的是大神,厉害。

你说的是其中的一种,这种情况是最好的情况,但是,ERP中的数据有可能删掉某行数据呢?比如:
时间 姓名 新增列1 新增列2 新增列3
111  A      a
333  C                    c          d
444  D               
  其中222 B 这条数据被删了,本来之前对应的222 B中的c、d应该也需要被删掉,但是,新增列因为是自己添加的,数据不会变化。这样就导致了,原始数据和新增列数据不匹配了。

TA的精华主题

TA的得分主题

发表于 2018-9-10 08:55 | 显示全部楼层
exc-led 发表于 2018-9-8 08:52
首先,谢谢你能过来看这个问题,但我没有提示出数据是ERP,你却一语道破是ERP,真的是大神,厉害。

你 ...

你的意思是不管导入后你的表格的情况,只需要与erp同步就行?

也就是说 导入后的表格,始终与erp数据是一致的。

如果你的表格中有(添加了备注列),erp也有的话,你的表格是否需要删除备注列?

TA的精华主题

TA的得分主题

 楼主| 发表于 2018-9-10 18:09 | 显示全部楼层
魂断蓝桥 发表于 2018-9-10 08:55
你的意思是不管导入后你的表格的情况,只需要与erp同步就行?

也就是说 导入后的表格,始终与erp数据 ...

感觉你说的这些我不明白,因为在SQL数据源中没法新增空白备注列。只能在原始数据表的情况下,去手动添加备注列,这个情况正是:http://club.excelhome.net/thread-1163504-1-1.html
。ERP里面没有备注列,只能在导出的表格手动加备注列,但是手动加备注列就会出现我说的那些情况

TA的精华主题

TA的得分主题

发表于 2018-9-12 09:29 | 显示全部楼层
exc-led 发表于 2018-9-10 18:09
感觉你说的这些我不明白,因为在SQL数据源中没法新增空白备注列。只能在原始数据表的情况下,去手动添加 ...

1. ERP数据结构无法改
2. ERP数据在更新,查询结果在变化
3. 手工添加的的备注是与查询结果对应的,查询结果变了,手工备注无法自动跟随变动

感觉是备注和查询结果混在一起造成的,如果分开呢有无可能,也许找个唯一ID会有帮助?

TA的精华主题

TA的得分主题

 楼主| 发表于 2018-9-12 10:14 | 显示全部楼层
刀羊 发表于 2018-9-12 09:29
1. ERP数据结构无法改
2. ERP数据在更新,查询结果在变化
3. 手工添加的的备注是与查询结果对应的,查 ...

理是这个理,但是怎么找唯一ID?如何让备注列与唯一ID进行“捆绑”?

TA的精华主题

TA的得分主题

发表于 2018-9-12 10:47 | 显示全部楼层
exc-led 发表于 2018-9-12 10:14
理是这个理,但是怎么找唯一ID?如何让备注列与唯一ID进行“捆绑”?

采购订单创建日期应该是唯一的。
您需要登录后才可以回帖 登录 | 免费注册

本版积分规则

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

GMT+8, 2025-1-16 03:48 , Processed in 0.040340 second(s), 11 queries , Gzip On, MemCache On.

Powered by Discuz! X3.4

© 1999-2023 Wooffice Inc.

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

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

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