Excel 查找货币和金额,并将ID存储在数组中并粘贴到输出表中

Excel 查找货币和金额,并将ID存储在数组中并粘贴到输出表中,excel,vba,Excel,Vba,我想在A列或B列中查找文本货币,存储“货币”下列出的所有货币。金额的相同过程可以在列中进行 将值存储在数组中。然后粘贴到输出表中。货币已列在表的第一行的输出表中。但是,如果是新货币,则代码应在第1行中找到最后使用的单元格并添加它。应将金额值添加到输出工作表中,并与从源工作表复制的货币和ID号相对应 我有一些密码 Public Sub loopRow() Dim curArray As Variant Dim listarray As Variant Di

我想在A列或B列中查找文本货币,存储“货币”下列出的所有货币。金额的相同过程可以在列中进行 将值存储在数组中。然后粘贴到输出表中。货币已列在表的第一行的输出表中。但是,如果是新货币,则代码应在第1行中找到最后使用的单元格并添加它。应将金额值添加到输出工作表中,并与从源工作表复制的货币和ID号相对应

我有一些密码

    Public Sub loopRow()

    Dim curArray     As Variant
    Dim listarray As Variant
    Dim cnt         As Long

'Find Currency

Dim rgFound As Range
Set rgFound = Range("A:B").Find("Currency")

'Find last used row
    curArray = Cells(rgFound.Address).End(xlUp).Row

    'Transpose list of currecny from the row down from the word Currency that it has found
        listarray = Application.Transpose(Cells(Rows, curArray).End(xlUp)).Row

    For cnt = LBound(curArray) To UBound(curArray)
        curArray(cnt) = curArray(cnt)
    Next cnt
    For cnt = LBound(curArray) To UBound(curArray)
        'Debug.Print curArray(cnt)

    'Copy and paste into Sheet under the correct curreny, if new currency then add this in row A


    Next cnt
End Sub

虽然你需要明白你的问题是无法回答的,但我会尽力帮助你

我们的问题是没有像您那样查看源代码表,因为我们根本看不到它。您说您在A列或B列或两者中都有“货币”一词,在某个地方有“ID”列,而在任何地方都有“金额”值。这是棘手的源数据。如果更可能的情况是,ID在一个特定列中,金额在一组列中,那么我们就有机会了

你的问题概括了你想采取的基本步骤,因此你有了一个良好的开端

但是,如果我对源数据的理解是正确的,您可以在没有VBA的情况下完成所有工作。自己创建一个工作表或多个工作表。当然是一个整理完整的货币清单。通过公式获取a列和B列的副本,然后让工作表逐行检查,并使用逻辑构建列表。电子表格在这方面很好

获得列表后,将其用作输出工作表上的行标题,并使用sumifs获取值。我不确定这些ID是否适合,但是如果它们是您的行标题,那么请按照上面的方法获取唯一ID的列表,并将它们链接到列A中的输出页面。您的sumifs可以处理这一点

这很难告诉你所有你需要知道的,但是如果你把它解决了,你就会学到很多关于Excel的知识,当你需要进入VBA的时候

如果您更愿意使用VBA,请分解每一步,直到它起作用,然后继续下一步

如果您需要更多帮助,请将数据粘贴到此处。如果需要,请先匿名