在Excel中从表中有条件地复制

我想把这两个debitcredit列复制到其他表,这些表只与各自的账户值相匹配,即所有现金条目都转到现金账户表,等等。我还需要一种方法来省略那些已经被复制的内容(所以必须引用一些支票列)。

但我不清楚如何将其转化为VBA。

下面是工作表的视觉效果。

Excerpt from Worksheet

我的VBA代码到目前为止(MyAdd是一个将范围复制到另一个指定表格的函数):

Sub CopyRange()
For Each c In Range("Journal").Cells
 If c.Value = "Cash" Then
    If Range("Journal[@[Account 1]]").Value = "Cash" Then MyAdd "Cash_Account", Range(c.Offset(0, 2), c.Offset(0, 3))
    Else: MyAdd "Cash_Account", Range(c.Offset(0, 1), c.Offset(0, 2))
Next
End Sub

解决方案:

我不知道你为什么要这样做。似乎有另一个最终目标在心中。不过,要在VBA中实现你的要求,可以用下面的代码来完成。

Sub GetNewColumnOfData()

    Dim Table As ListObject
    Dim TargetRange As Range
    Dim Index As Long
    Dim Values As Variant

    Set Table = ThisWorkbook.Worksheets("Sheet3").ListObjects("Journal")
    Set TargetRange = ThisWorkbook.Worksheets("Sheet3").Range("G1")
    ReDim Values(1 To Table.ListRows.Count, 1 To 1)

    For Index = 1 To Table.ListRows.Count
        If Table.ListColumns("Account 1").DataBodyRange(Index, 1).Value = "Cash" Then
            Values(Index, 1) = 1
        ElseIf Table.ListColumns("Account 2").DataBodyRange(Index, 1).Value = "Cash" Then
            Values(Index, 1) = 2
        End If
    Next Index

    TargetRange.Resize(Table.ListRows.Count, 1).Value = Values

End Sub

据此定义你的rangeetable名称。

给TA打赏
共{{data.count}}人
人已打赏
未分类

python: 独立移动张量中的每个矩阵。

2022-9-13 14:07:41

未分类

在没有关联服务的情况下获取用户的SQL查询。

2022-9-13 14:18:35

0 条回复 A文章作者 M管理员
    暂无讨论,说说你的看法吧
个人中心
购物车
优惠劵
今日签到
有新私信 私信列表
搜索