作者ljuber (美少妇与女儿同学的故事)
看板Office
标题[算表] vba with range find问题
时间Thu Sep 20 10:41:44 2018
软体:excel
版本:2007
需求很简单
比对sheets("设定")的A栏 若有这个值就在比对资料那一栏位旁传回 "V"
没有就空格
但是会出现此处需要物件
不知道那边想错了...
Dim kx As String
Set sht1 = Sheets("资料")
sht1.Select
lastrow = Range("A1").End(xlDown).Row
col1 = Range("A1").End(xlToRight).Column + 1
With Sheets("设定").Range("A:A")
For i = 3 To lastrow
Set kx = .Find(What:=Range("A" & i).Text, LOOKAT:=xlWhole)
^^会出现此处需要物件
If Not k Is Nothing Then
Cells(i, col1) = "V"
Else
Cells(i, col1) = ""
End If
Next i
End With
--
※ 发信站: 批踢踢实业坊(ptt.cc), 来自: 60.250.67.78
※ 文章网址: https://webptt.com/cn.aspx?n=bbs/Office/M.1537411307.A.6FA.html
1F:→ soyoso: dim kx as string改为dim kx as range 09/20 10:42
2F:→ soyoso: 另外if not k is nothing then 变数k如指的是kx的话,也请 09/20 10:45
3F:→ soyoso: 修改一下 09/20 10:46
我改了还是会有出现错误讯息
不知道那边有问题 ...附上原始档案
https://drive.google.com/open?id=1GHBsDgTg_WCtlX5ZvLoIgommgylGJj0M
※ 编辑: ljuber (60.250.67.78), 09/20/2018 12:01:12
4F:→ newacc: LookAt = xlWhole是指全部符合,xlPart才是你符合你资料的 09/20 12:28
5F:→ newacc: 建议在Sub外面加上Option Explicit,每个变数都先Dim过比 09/20 12:29
6F:→ newacc: 较容易找变数方面的bug 09/20 12:29
7F:→ newacc: 同时可以避免变数名称误打产生的错误 09/20 12:30
8F:→ soyoso: 以xlwhole的话,what方面就以 "*" & range("a" & i) & "*" 09/20 12:46
9F:→ soyoso: 的方式 09/20 12:46
10F:→ ljuber: 感谢S大的指导 office有你真好^^ 09/20 13:42