作者o1o3o1o31030 (主席)
看板Office
标题[算表] VBA 资料选取
时间Mon Mar 27 12:27:13 2017
软体:excel
版本:2013
目前工作常遇到要将一个矩阵资料做列选取或是行选取
EX: 1表选取 0表不选
情况一 列选取
A B C D E ....
1 11 12 13 14 15 1
2 21 22 23 24 25 0
3 31 32 33 34 35 1
4 41 42 43 44 45 1
.
.
.
输出
A B C D E ....
1 12 13 14 15 16
2 31 32 33 34 35
3 41 42 43 44 45
.
.
情况二 行选取
A B C D E ....
1 11 12 13 14 15
2 21 22 23 24 25
3 31 32 33 34 35
4 41 42 43 44 45
.
.
. 1 0 1 0 1
输出
A B C D E ....
1 11 13 15
2 21 23 25
3 31 33 35
4 41 43 45
.
.
.
类似这样,用函数或是程序都可以
感谢各位高手!
--
※ 发信站: 批踢踢实业坊(ptt.cc), 来自: 118.160.70.233
※ 文章网址: https://webptt.com/cn.aspx?n=bbs/Office/M.1490588836.A.561.html
1F:→ soyoso: 情况一或二,回圈配合判断if或搜寻range.find的方式,符合 03/27 12:31
2F:→ soyoso: 输出,range.copy或range=range.value 03/27 12:33
3F:→ soyoso: 情况一也可以筛选range.autofilter或range.advancedfilter 03/27 12:34
4F:→ soyoso: 如以筛选应多设个标题列 03/27 12:38
5F:→ soyoso: range.copy配合的贴上可以worksheet.paste或 03/27 12:44
6F:→ soyoso: range.pastespecial 03/27 12:44
8F:→ o1o3o1o31030: 可以请S大详述一下VBA吗? 有点看不懂@@? 03/27 23:30
9F:→ o1o3o1o31030: 我的意思是自订函数XD 用储存格函数是我现在用法 03/27 23:30
10F:→ o1o3o1o31030: 资料太多非常卡 想要优化一下 不然常跑到当机= = 03/27 23:31
11F:→ soyoso: 原po要的是程序sub还是要自订函数function? 03/27 23:33
12F:→ o1o3o1o31030: 我原本构想是用自订函数 03/27 23:53
13F:→ o1o3o1o31030: 像是 = 选取函数(矩阵,选取向量) 03/27 23:54
14F:→ soyoso: 可以原po回文所述,回传符合条件的array,再以index取出 03/28 00:43
15F:→ o1o3o1o31030: 可以请教S大如何让自订函数输出阵列公式吗? 03/28 16:21
16F:→ o1o3o1o31030: 没写过阵列的,自订函数难以侦错或是用程序比较适合 03/28 16:22
17F:→ o1o3o1o31030: 不太知道该如何指定一阵列给自订函数输出 03/28 16:23
18F:→ soyoso: 如要於巨集内阵列公式的话可用evaluate 03/28 16:32
19F:→ soyoso: 如回文的array则是以变数或自订函数指定符合条件范围,变 03/28 16:38
20F:→ soyoso: 数类型为variant 03/28 16:39
21F:→ o1o3o1o31030: 我想s大误会我的意思了xd 我不该讲函数两个字的 03/28 22:15
22F:→ o1o3o1o31030: 有点混淆! 我重新请教如果我想写sub 该如何进行呢? 03/28 22:16
23F:→ o1o3o1o31030: 抱歉我语意不清,我想直接做个sub而不是引用excel函 03/28 22:17
24F:→ o1o3o1o31030: 数 03/28 22:17
25F:→ soyoso: 如原po要的是sub的话,回文的第1~6则是回覆sub的部分 03/29 02:04