[问题] 筛选后的前几个资料要复制到另一个表格

楼主: CaoCao (超级讨厌统一)   2022-06-25 05:27:26
软件:MS Office Excel
版本:2016
请问各位大大,我从网络下载一个当日股票交易资料表,要去除ETF,
然后把前15列资料复制到另一个地方,我是用宏写,前面都没问题,
但是在复制筛选结果时,就无法正确复制到我需要的资料。
比如下例:
A B C
1 排名 代号 名称
2 1 00632R 元大台湾50反1
3 2 2409 友达
4 3 00637L 元大沪深300正2
5 4 2888 新光金
6 5 2892 第一金
7 6 1513 中兴电
8 7 2206 三阳工业
9 8 00676R 富邦台湾加权反1
10 9 1314 中石化
11 10 3481 群创
12 11 00893 国泰智能电动车
13 12 2834 台企银
14 13 1101 台泥
15 14 4114 健乔
16 15 0056 元大高股息
17 16 1402 远东新
18 17 3682 亚太电
19 18 3045 台湾大
20 19 ...................
21 20 ...................
往下数百笔资料
我是用代号筛选 → 不开始于 → 00 来做筛选,选完会变成如下:
A B C
1 排名 代号 名称
3 2 2409 友达
5 4 2888 新光金
6 5 2892 第一金
7 6 1513 中兴电
8 7 2206 三阳工业
10 9 1314 中石化
11 10 3481 群创
13 12 2834 台企银
14 13 1101 台泥
15 14 4114 健乔
17 16 1402 远东新
18 17 3682 亚太电
19 18 3045 台湾大
20 19 2884 玉山金
21 20 2615 万海
然后要复制前15列的资料,也就是到2615万海这边,复制到其他地方,
然而每天的资料都不一样,所以用宏写出来的前15列,列数会不同,
我用录制的会是这样:
Range("A3:C21").Select
Selection.Copy
但想也知道,每天的结果不会是A3:C21这样,
请问各位大大,宏这边该如何修改呢?
作者: oldbottle   2022-06-25 07:20:00
为什么结果不会是A3:C21 莫非你只要固定你现在看到的前十五列?你可以复制[可见到]的储存格到另一个工作表 然后delete15列以后的列数 或者用for next 循环从最后列往上删到15列
楼主: CaoCao (超级讨厌统一)   2022-06-25 17:22:00
因为排名1的00632R被筛选掉了,所以从排名2开始才是A3。但是日期改掉之后,排名1的不一定会被筛选掉,有可能从A2开始。同理C21也不一定就是筛选后的第15列,所以我才说不会固定是A3:C21,因为每天的数据都会不一样。

Links booklink

Contact Us: admin [ a t ] ucptt.com