gpt4 book ai didi

vba - 如何检查 VBA 中的多个值是否不相等?

转载 作者:行者123 更新时间:2023-12-02 03:26:55 28 4
gpt4 key购买 nike

我想将八个数字的列表打印到工作表,但前提是它们都是唯一的。

理想的代码应该是这样的

If a <> b <> c Then

而不是

If a <> b And a <> c And b <> c Then

如果使用以下代码从数组中调用值,这是否可能:

Cells(2, 8) = numarr(i)
Cells(2, 9) = numarr(j)
Cells(2, 10) = numarr(k)
Cells(2, 11) = numarr(l)
Cells(3, 8) = numarr(m)
Cells(3, 9) = numarr(n)
Cells(3, 10) = numarr(o)
Cells(3, 11) = numarr(p)

谢谢!

最佳答案

执行此操作的快速而肮脏的方法是使用字典,它需要一个唯一的键。只需不断从数组中输入数字,直到您找到字典中已有的数字。只需将它变成一个函数并将您的数组传递给它:

Private Function AllUnique(incoming As Variant) As Boolean

If Not IsArray(incoming) Then Err.Raise 13

Dim candidates As Scripting.Dictionary
Set candidates = New Scripting.Dictionary

Dim index As Long
For index = LBound(incoming) To UBound(incoming)
If candidates.Exists(incoming(index)) Then Exit Function
candidates.Add incoming(index), index
Next index

AllUnique = True

End Function

关于vba - 如何检查 VBA 中的多个值是否不相等?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29805193/

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