【问题标题】:If condition to check if content in cell is right aligned not working如果条件检查单元格中的内容是否右对齐不起作用
【发布时间】:2018-04-20 18:09:30
【问题描述】:

我有一个从 pdf 文件复制和粘贴的数据,然后使用“texttocolumns”进行拆分。我使用这些数据将特定信息提取到另一个 Excel 中。所有这些都是使用 vba 完成的。

作为其中的一部分,我有以下代码来检查单元格 A12(示例)中的内容是否右对齐。尽管单元格中的内容“显示”为右对齐,但 vba 并未将结果显示为“真”。

If Sheets("Test").Range("A12").HorizontalAlignment = xlRight Then
''Do something
End if

测试数据

【问题讨论】:

  • 你连A12都不显示!
  • 不工作是什么意思?它将返回 True 或 False
  • 数据可以向右缩进而不是右对齐。它是您正在测试的单元格的属性。

标签: vba excel alignment right-align


【解决方案1】:

数字默认右对齐

所以你可能想用这个

With Sheets("Test").Range("A12")
    If .HorizontalAlignment = xlRight Or (IsNumeric(.Value) And .HorizontalAlignment = xlGeneral) Then
        MsgBox cell.Value
    End If
End With

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-07-03
    • 1970-01-01
    • 1970-01-01
    • 2019-03-02
    • 2014-09-27
    • 2012-04-06
    相关资源
    最近更新 更多