首先:我正在尝试创建一个搜索按钮,如果它找到控件值与该特定列中的值之间的匹配,则会将ID(“bearpass”)数字添加到一维数组中。此搜索可能涉及多个列中的多个条件(我有一个用于Bearpass Number,First Name和Last Name),并且这些值中的任何一个都是可搜索的。由于数组为它找到的每个命中添加了Bearpass数,因此该数组中可以有多个相同的ID号。我想知道如何添加到数组。我发现我可能需要try! myplayer = AVAudioPlayer(contentsOfURL: NSURL(fileURLWithPath: filepath))
才能将值保留在我的数组中,同时添加到最后。这是我的数组声明:
Redim Preserve
这是我的控制搜索代码:
Dim matchBearpassNumberArray() As Integer
'redim the array with a value to avoid error from Ubound
' dealing with an un-dimensioned array
ReDim matchBearpassNumberArray(1 To 1) As Integer
此外,如果If ctrl.Name = "FirstNameTextBox" Then
'If there is at least one match, increment the total number of search criteria found
If WorksheetFunction.CountIf(Sheet1.Range("B:B"), Me.FirstNameTextBox.Value) > 0 Then 'B column contains names
criteriaNumberMatches = criteriaNumberMatches + 1
'Begin search loop for FirstName uding DoEvents loop
rowNumber = 0
Do
DoEvents
'increment row number to check next row
rowNumber = rowNumber + 1
'1d. look through Bearpass column in that spot
itemInReview = Sheets("Students").Range("B" & rowNumber)
'IF it matches, add the BPN of the match to the array.
If itemInReview Like ctrl.Value Then
'add the value in
matchBearpassNumberArray(UBound(matchBearpassNumberArray)) = Sheets("Students).Range("A" & rowNumber) 'A column contains the bearpass number for that value
'adjust the size of the array
ReDim Preserve matchBearpassNumberArray(1 To (UBound(matchBearpassNumberArray) + 1)) As Integer
End If
'go back up to DoEvents/ end DoEvents loop for FirstName
Loop Until itemInReview = "" Or IsNull(itemInReview)
Else: MsgBox "We didn't find any result for the First Name supplied."
End If
End If
能够正常工作并添加所需的所有值,我还有另一个难题:我需要能够搜索这个数组并查找所有实例中的Bearpass数与有matchBearpassNumberArray
。由于我的搜索块(如上面的那个)有一个用于Bearpass Number,First Name和Last Name,并且每个块添加它找到的每个匹配的Bearpass数,如果我搜索所有匹配,我将需要能够计算每个数组中唯一的Bearpass Number,如果它们的数量与criteriaNumberMatches
一样多,那么我知道我在所有类别中找到了匹配项。
答案 0 :(得分:0)
更改为Collection
解决了我的问题。
另外,我用ID号码填充了另一张工作表,每当他们得到一个标准点击时,我将它们旁边的单元格增加1.最后,如果一个ID号码旁边有一个单元格,带有`.value = criteriaNumberMatches'它被复制到一个集合中进行打印。 (仍然在最后一部分工作)