我的 Excel 2013 电子表格中有三列。一列是 ID,一列是引用列,一列是引用者列。有些行引用其他行,有些行被其他行引用。引用可能是一对多关系(许多次要行引用一个重要行)。有没有办法用引用另一个单元格的单元格列表填充单元格?
| ID | REF | REF-BY |
------------------------
| 001 | |002,003 |
------------------------
| 002 | 001 | |
------------------------
| 003 | 001 | |
------------------------
谢谢您的帮助
答案1
解决此问题的方法是将自定义函数包含在 Excel 中,以便为您计算结果。在 VBA 的新模块中包含以下代码。按Alt+F11打开 Visual Basic 编辑器,然后单击插入 --> 模块。将以下代码粘贴到新模块中,然后再次关闭 Visual Basic 编辑器。
Function MatchCriteria(ID As Range, REF As Range) As String
Dim Cell As Range
Dim Str As String
For Each Cell In REF
If Cell.Value = ID.Value And Cell.Row <> ID.Row Then
If Str = vbNullString Then
Str = Cells(Cell.Row, ID.Column).Value
Else
Str = Str & ", " & Cells(Cell.Row, ID.Column).Value
End If
End If
Next Cell
MatchCriteria = Str
End Function
您现在可以使用该功能,如下图所示。
函数中的第一个输入定义 ID,第二个输入定义您的“引用列”。请注意,在我的 Excel 版本(丹麦语)中,输入分隔符是“ ;
。如果您使用的是英文版 Excel,则应使用逗号,
。