Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/vba/16.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Excel 函数用于搜索所有工作表并基于变量计算字段_Excel_Vba - Fatal编程技术网

Excel 函数用于搜索所有工作表并基于变量计算字段

Excel 函数用于搜索所有工作表并基于变量计算字段,excel,vba,Excel,Vba,我正在做一个项目来记录和查看追加销售。 这一切都由MSforms控制。 每个月都有自己的表格,所有用户上传的表格也会被发布。 我已经建立了计算每个用户每月到目前为止的追加销售,但我现在需要它做的是计算每年到目前为止每个用户的数字。 用户名将通过我构建的loggin系统发布到一个变量中。 如果有帮助,记录追加销售的工作表将以ups开始命名。 提前谢谢你的帮助 Public Sub btn_test_Click() Dim var_nextline4 As Integer Dim

我正在做一个项目来记录和查看追加销售。 这一切都由MSforms控制。 每个月都有自己的表格,所有用户上传的表格也会被发布。 我已经建立了计算每个用户每月到目前为止的追加销售,但我现在需要它做的是计算每年到目前为止每个用户的数字。 用户名将通过我构建的loggin系统发布到一个变量中。 如果有帮助,记录追加销售的工作表将以ups开始命名。 提前谢谢你的帮助

Public Sub btn_test_Click()

    Dim var_nextline4 As Integer
    Dim var_Allsheets As Variant

    var_YupsN = 0
    var_YpremR = 0
    var_Yhups = 0
    var_ytdRev = 0

    Dim WS As Worksheet
    Dim z As Variant
    z = "a"
    For Each WS In ThisWorkbook.Worksheets
    ' do something with worksheet WS
    If Worksheets(WS).Cells(1, 1) = "Associate Name" Then
    var_nextline4 = 2
        'z = "a"

        Do While z <> ""
            z = Worksheets(WS).Cells(var_nextline4, 1)
                If z <> var_associate Then
                    var_nextline4 = var_nextline4 + 1
                Else
                    Me.lsb_upsell.AddItem Cells(var_nextline4, 5).Value


        Select Case Worksheets(WS).Cells(var_nextline4, 10)
                        Case "CYS"
                var_YpremR = Yvar_premR + Worksheets(WS).Cells(var_nextline4, 6).Value
                        Case "LDS"
                var_YpremR = var_YpremR + Worksheets(WS).Cells(var_nextline4, 6).Value
                        Case "LVK"
                var_YpremR = var_YpremR + Worksheets(WS).Cells(var_nextline4, 6).Value
                        Case "LVD"
                var_YpremR = var_YpremR + Worksheets(WS).Cells(var_nextline4, 6).Value
                        Case "LVB"
                var_YpremR = Yvar_YpremR + Worksheets(WS).Cells(var_nextline4, 6).Value
            Case Else
        End Select

        If var_Yhups < Worksheets(WS).Cells(var_nextline4, 13).Value Then
            var_Yhups = Worksheets(WS).Cells(var_nextline4, 13).Value
        End If
            var_ytdRev = var_ytdRev + Worksheets(WS).Cells(var_nextline4, 13).Value
            var_Yforms = var_Yforms + 1
            var_YupsN = var_YupsN + Worksheets(WS).Cells(var_nextline4, 6).Value


            var_nextline4 = var_nextline4 + 1

        End If
    Loop

    End If

        Next WS

            lbl_ytdUpsForms = var_Yforms
            lbl_ytdUpsn = var_YupsN
            lbl_ytdPrem = var_YpremR
            lbl_ytdHups = "£" & var_Yhups
            lbl_ytdRev = "£" & var_ytdRev
End Sub

你有什么问题?你的代码不工作吗?它会抛出错误吗?如果可能的话更具体一点我现在已经修复了它,出于某种原因,Do-While循环不希望在For循环中工作过多,所以我将Do-While循环放在一个单独的函数中,然后在For循环中调用该函数