excel - Excel VBA .Find 忽略逗号
问题描述
我有一个在 A 列中搜索值的代码。这些值是项目编号,例如 4545 和 3605。有时一个项目确实有多个子项目。确定一个子项目例如:3605,01和3605,02等。
我使用 .find 查找项目所在的行,找到后粘贴一些数据。
问题
像 4545 这样的数字工作得很好,但是当使用逗号时,Excel 似乎没有得到它。我认为他认为逗号是一个点。如何让 Excel 知道逗号是小数点分隔符?还是有其他问题?
这是我的代码:
Dim Projectnumber As String
Projectnumber = ActiveWorkbook.Sheets("Planning").Range("A6").Value2
Dim ThisProjectRow As Range
With Workbooks(Bureauplanner).Sheets("planning").Range("A:A")
Set ThisProjectRow = .Find(What:=Projectnumber, LookIn:=xlValues, Lookat:=xlWhole, MatchCase:=False, Searchformat:=False)
If Not ThisProjectRow Is Nothing Then
End If
End With
解决方案
对,所以你的罪魁祸首是String
数据类型。你提到
“A 列的值...”
当您将查找值存储到String
数据类型中时,这意味着您正在比较两种不同的数据类型 > ADouble
与 a String
。我想这不适合VBA。
所以这里有两种方法可以解决这个问题:
1)。将 A 列转换为String
格式化值。
或者。
2)。将String
变量替换为Double
>Dim ProjectNumber As Double
推荐阅读
- oop - 为什么 OOP 与过程式编程并列?
- wordpress - 如何删除在 wordpress 网站上注入的脚本:ads.voipnewswire.net?
- c# - DataGridVIEW 刷新 C# WinForms
- node.js - NodeJS Rest API 与 Firebase
- swift - 使用操作获取 CLLocation 数据
- gcc - 为什么使用 -l 时 gcc 会动态链接?
- azure - 插入或跳过 Azure 数据迁移工具的选项?
- c++ - 如何制作宏以在for循环中生成代码?
- python - Python:在模式后打印x行,包括带有模式的行
- php - Laravel 尝试以与 Reddit 相同的方式路由他们的 subreddits