Office 板


LINE

软体:excel 版本:2007 最近用vba写查找的公式时 我是这样写的 r = 0 r = Application.WorksheetFunction.Match(r0.Cells(i), column1, 0) Cells(i, 2).Value = Application.WorksheetFunction.Index(column2, r) 用回圈来跑这样的式子 因为有时候会有对不到的情况 如果对不到我希望它显示空白 所以r就需在每次回圈重新宣告为零 否则在没找到新的一笔资料时r会显示为前一个回圈的r 但我发现这样效率好像很差 查找很慢 想问有没有更好的写法会更快的 有关设为零的部分还可以怎麽做吗 或是直接用iferror会比较好吗 但是我没找到application+iferror的写法 有没有高手能提供一点建议呢 非常谢谢 --



※ 发信站: 批踢踢实业坊(ptt.cc), 来自: 140.114.233.182
※ 文章网址: https://webptt.com/cn.aspx?n=bbs/Office/M.1500568235.A.0AD.html
1F:→ soyoso: 如错误回传空白,可以if配合iserror,match方面以 07/21 07:04
2F:→ soyoso: application.match 07/21 07:04
3F:→ soyoso: 或以判断range.find如is nothing回传空白 07/21 07:06
4F:→ soyoso: 或以工作表函数countif,为0时回传空白 07/21 07:08
5F:→ arashi2014: s大你好 是否可以再问一个回圈的问题 07/22 00:55
6F:→ arashi2014: For i = 4 To Range("C4").End(xlDown).Row 07/22 00:57
7F:→ arashi2014: If Cells(i, 42) = 0 Then 07/22 00:57
8F:→ arashi2014: Rows(i).Delete Shift:=xlUp 07/22 00:57
9F:→ arashi2014: v=v-1 07/22 00:57
10F:→ arashi2014: 想问这样要怎麽改比较好 因为删除的列上移 07/22 00:58
11F:→ arashi2014: 所以让删除的时候v-1再跑一次确保每一列都比较过 07/22 00:59
12F:→ arashi2014: 但发现这样跑不动 不知为何 07/22 00:59
13F:→ arashi2014: 我确定是v-1这一行的问题 07/22 01:02
14F:推 foolkids: 回圈反过来跑,i = 4 to 1, step -1 07/22 06:12
15F:→ soyoso: 如f大所述反序,以回文来看为 07/22 10:03
16F:→ soyoso: for i = range("c4").end(xldown).row to 4 step -1 07/22 10:03
17F:→ soyoso: 只是v=v-1这里的变数v并无於回文内出现,所以不太清楚该变 07/22 10:07
18F:→ soyoso: 数和确保每一列都比较过的关系为? 07/22 10:07
19F:→ soyoso: 但如以反序的话,应就可取消该行试试 07/22 10:08
20F:推 foolkids: 对,i = i - 1 这行不用写 07/22 10:20
21F:推 foolkids: 至於你原文的问题,如果查找的范围很大,建议将资料写成 07/22 10:22
22F:→ foolkids: 阵列,在阵列里查找会比较快 07/22 10:22
23F:→ foolkids: 具体做法是A阵列存放查找key值、B阵列存放回传值,两个 07/22 10:25
24F:→ foolkids: 阵列的顺序一致时,可以在A阵列找到key值的资料序号,然 07/22 10:25
25F:→ foolkids: 後带回B阵列该序号的值,可以大幅加快运算速度 07/22 10:25
26F:→ soyoso: 请问f大那里有i=i-1?我只有看到v=v-1 07/22 10:31
27F:推 foolkids: s大,抱歉,我刚刚以为你回的那些讯息是原po问的… 他应 07/22 10:56
28F:→ foolkids: 该是key错吧? 07/22 10:56
29F:→ arashi2014: v是打错没错 很感谢两位大大 改善非常多 07/22 13:10
30F:→ arashi2014: f大提供的方式我晚一点试试看 非常感谢 07/22 13:11







like.gif 您可能会有兴趣的文章
icon.png[问题/行为] 猫晚上进房间会不会有憋尿问题
icon.pngRe: [闲聊] 选了错误的女孩成为魔法少女 XDDDDDDDDDD
icon.png[正妹] 瑞典 一张
icon.png[心得] EMS高领长版毛衣.墨小楼MC1002
icon.png[分享] 丹龙隔热纸GE55+33+22
icon.png[问题] 清洗洗衣机
icon.png[寻物] 窗台下的空间
icon.png[闲聊] 双极の女神1 木魔爵
icon.png[售车] 新竹 1997 march 1297cc 白色 四门
icon.png[讨论] 能从照片感受到摄影者心情吗
icon.png[狂贺] 贺贺贺贺 贺!岛村卯月!总选举NO.1
icon.png[难过] 羡慕白皮肤的女生
icon.png阅读文章
icon.png[黑特]
icon.png[问题] SBK S1安装於安全帽位置
icon.png[分享] 旧woo100绝版开箱!!
icon.pngRe: [无言] 关於小包卫生纸
icon.png[开箱] E5-2683V3 RX480Strix 快睿C1 简单测试
icon.png[心得] 苍の海贼龙 地狱 执行者16PT
icon.png[售车] 1999年Virage iO 1.8EXi
icon.png[心得] 挑战33 LV10 狮子座pt solo
icon.png[闲聊] 手把手教你不被桶之新手主购教学
icon.png[分享] Civic Type R 量产版官方照无预警流出
icon.png[售车] Golf 4 2.0 银色 自排
icon.png[出售] Graco提篮汽座(有底座)2000元诚可议
icon.png[问题] 请问补牙材质掉了还能再补吗?(台中半年内
icon.png[问题] 44th 单曲 生写竟然都给重复的啊啊!
icon.png[心得] 华南红卡/icash 核卡
icon.png[问题] 拔牙矫正这样正常吗
icon.png[赠送] 老莫高业 初业 102年版
icon.png[情报] 三大行动支付 本季掀战火
icon.png[宝宝] 博客来Amos水蜡笔5/1特价五折
icon.pngRe: [心得] 新鲜人一些面试分享
icon.png[心得] 苍の海贼龙 地狱 麒麟25PT
icon.pngRe: [闲聊] (君の名は。雷慎入) 君名二创漫画翻译
icon.pngRe: [闲聊] OGN中场影片:失踪人口局 (英文字幕)
icon.png[问题] 台湾大哥大4G讯号差
icon.png[出售] [全国]全新千寻侘草LED灯, 水草

请输入看板名称,例如:Gossiping站内搜寻

TOP