如何为缩进的Measurement单元格赋值对应未缩进的父级Measurement值?
解决VBA赋值父级Measurement值的问题
需求说明
- Parent Measurement列:需填充对应Measurement列中最上方的未缩进父级值
- Measurement列:未缩进条目为父级,缩进(IndentLevel=2)的条目隶属于最近的上方父级
修改后的VBA代码
新增变量存储当前父级值,遍历过程中动态更新父级并为缩进单元格赋值:
Dim rngCol As Range Dim cl As Range Dim parentValue As String ' 存储当前父级Measurement值 Set rngCol = wssc.Range("DRT_Table[Measurement]") parentValue = "" ' 初始化父级值 For Each cl In rngCol ' 判断当前单元格是否为父级(未缩进) If cl.IndentLevel <> 2 Then parentValue = cl.Value ' 更新父级值为当前单元格内容 Else ' 为左侧Parent Measurement列赋值当前父级值 cl.Offset(0, -1).Value = parentValue End If Next cl
代码说明
parentValue变量用于记录遍历过程中最近的未缩进父级内容- 遍历每个单元格时,优先检查是否为父级条目:若是则更新
parentValue - 遇到缩进(IndentLevel=2)的单元格时,直接将
parentValue赋值到左侧对应列
内容的提问来源于stack exchange,提问作者Socramvm
相关产品推荐
相关产品推荐

