我试图平均一列,但只有当值大于零时.然后我希望它将信息放在该行的下一个空白单元格中.
下面的代码是一个简单的平均值,但我希望它从上面的单元格中排除任何零值.
With Range("D2")
.End(xlDown)(2, 1) = _
"=AVERAGE(" & .Address & ":" & .End(xlDown).Address & ")"
End With
Run Code Online (Sandbox Code Playgroud)
我尝试使用以下代码使其好像单元格地址大于零.但它一直给我一个调试错误?
With Range("D2")
.End(xlDown)(2, 1) = _
"=AVERAGEIF(" & .Address & ":" & .End(xlDown).Address & "," & Cell.Address & " > 0," & .Address & ":" & .End(xlDown).Address & ")"
End With
Run Code Online (Sandbox Code Playgroud)
任何帮助都会很棒.
谢谢Al
我有一个If公式作为我的宏代码的一部分,似乎没有以正确的方式工作.
下面的代码计算rCell.Offset并始终将其应用为True,我有一些示例,它等于112,113,118等,并且它将所需的单元格填充为选项2.
If rCell.Offset(0, -2).Value = "101" Or "102" Then
rCell.Value = "Option 2"
Else
rCell.Value = "Option 1"
End If
Run Code Online (Sandbox Code Playgroud)
我错过了什么吗?
我的每一行都有一个数据集(机场位置代码),例如伦敦(LHR)、巴黎(CDG)、罗马(FCO)等。
在某些行上,条目可能是 London、London、London、Paris。我计划通过清除重复项来删除它,但在某些情况下我有真正的重复项,例如伦敦、巴黎、伦敦。我想保留伦敦的决赛,因为中间还有另一个地点。如果我们考虑机场代码,路线可能如下所示 -
LHR、LHR、CDG、FCO、FCO(更改为 LHR-CDG-FCO)-
LHR、LHR、CDG、CDG、CDG、LHR(更改为 LHR-CDG-LHR) 我能够实现的是它刚刚返回 LHR-CDG 的不同列表。
代码出现的次数是动态的。
PowerQuery 中是否有可以返回此类逻辑的函数?
样本数据:
| ID | 路线 | 所需结果 |
|---|---|---|
| 1 | LHR、LHR、CDG、CDG、FCO | LHR-CDG-FCO |
| 2 | AMS、AMS、LHR、CDG | AMS-LHR-CDG |
| 3 | AMS、AMS、LHR、AMS、AMS | AMS-LHR-AMS |
| 4 | CGN-CGN-AMS-AMS-AMS-CDG-CDG-AMS | 中广核-AMS-CDG-AMS |
| 5 | 中广核-中广核-CDG-CDG-CDG | 中广核-CDG |