gpt4 book ai didi

Excel VBA :How to use StrComp in a While statement when one string is a text value contained in a cell?

转载 作者:行者123 更新时间:2023-12-04 20:53:11 25 4
gpt4 key购买 nike

返回错误的代码是以下内容的第一行:

    While StrComp(selectedRecipe, dataSheet.Cells(i, 1)) <> 0
recipeRow = recipeRow + 1
i = i + 1
Wend

我得到的调试与 While 语句行本身存在问题。此代码包含在用户窗体上的 OK 按钮单击事件下,其中 selectedRecipe 定义为主工作表子中的公共(public)字符串变量。 “i”在这个私有(private)子中被定义为一个整数。基本上,代码是在从下拉组合框中选择 selectedRecipe 之后查找工作表的哪一行包含 selectedRecipe 中包含的字符串值(selectedRecipe 正确返回并且没有与之相关的问题)。我假设我需要在“dataSheet.Cells(i,1)”前面有某种“转换”命令来将单元格值强化为字符串,但我不确定。谢谢!

最佳答案

1) 确保 dataSheet 实际设置为有效工作表。 2)正如共产国际所说,您需要从 1 开始,因为 Excel 是基于 1 而不是基于零。 3)您需要确保不会溢出行数:

 Public Sub CheckRecipe()

Dim selectedRecipe As String
Dim i As Long
selectedRecipe = "Test"
i = 1

While StrComp(selectedRecipe, ThisWorkbook.ActiveSheet.Cells(i, 1).Value) <> 0 _
And i < ThisWorkbook.ActiveSheet.UsedRange.Rows.Count
i = i + 1
Wend

End Sub

关于Excel VBA :How to use StrComp in a While statement when one string is a text value contained in a cell?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53403494/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com