系统:Windows 10

软件:Excel 2010

今日歌曲:

Part 1:逻辑过程

数组差集A-B

数组A与B的交集,假设为C

求在数组A中而不在数组C中的元素,即为差集

其实不用求交集,直接求在数组A而不在数组B中的元素,即为差集

10000点尴尬,不过文章写到这里啦,先按照这个笨方法来,哈哈

其中funIntersection为求交集函数,参考

Part 2:代码

Function funAMinusB(array1, array2)
    Rem>>求数组1和数组2的差集
    Rem>>
    Dim arrayInter
    Dim array3()
    Dim lenA
    Dim i
    Dim val1
    Dim pos
    Dim maxNum
    Dim FlagError
    lenA = 0
    On Error Resume Next
    Err.Clear
    arrayInter = funIntersection(array1, array2)
    '判断数组是否为空
    FlagError = UBound(arrayInter)
    If Err.Number  0 Then '判断是否为空数组
        funAMinusB = array1
    Else
        maxNum = UBound(array1)
        For i = 0 To maxNum Step 1
            val1 = array1(i)
            pos = Application.Match(val1, arrayInter, 0)
            If IsError(pos) Then '未找到
                ReDim Preserve array3(lenA)
                array3(lenA) = val1
                lenA = lenA + 1
            End If
        Next i
        funAMinusB = array3
    End If
End Function

Part 3:调用该函数

    array1 = Array("张三", "李四", 1, 2, 3, 4, 5)
    array2 = Array(7)
    array1_2 = funAMinusB(array1, array2)

执行结果

数组词多音字_两个数组_数组求和

两个数组_数组词多音字_数组求和

以上为本次的学习内容,下回见

限 时 特 惠: 本站每日持续更新海量各大内部创业教程,一年会员只需98元,全站资源免费下载 点击查看详情
站 长 微 信: lzxmw777

发表回复

您的电子邮箱地址不会被公开。 必填项已用*标注