【问题标题】:how to multi conditionally sort values using vba如何使用 vba 对值进行多条件排序
【发布时间】:2013-11-05 16:50:06
【问题描述】:

所以我从一个返回给定格式的日期字符串的外部源提取数据:“10/26/2013 9:46:46 AM”

当我对数据进行排序时,它似乎无法区分 AM 和 PM 值,因此许多中午 / 1 AM 值被移到底部。有没有人处理过这个问题/有一个解决方案可以让它识别 AM/PM 方面以及日期和时间?

谢谢

【问题讨论】:

    标签: vba sorting date


    【解决方案1】:

    我最终只是使用 TimeValue() 和 DateValue() excel 函数来拆分日期和时间。然后我编写了一个宏来根据股票代码、日期和时间进行 3 键排序。

    【讨论】:

      【解决方案2】:

      在提取数据的代码中,您只需稍微修改一下即可。 Range("D5").value = 字符串

      根据您的计算机设置,它可能会稍微更改为 24 小时时间

      【讨论】:

      • 应该问一下 - 你写了股票吗?如果没有,您可以使用 worksheet_change 事件,并且在每次更新时都会运行一个宏来转换数据。让我知道数据是在一个块中提取的,还是逐行不断更新。还有日期在哪一列?
      【解决方案3】:

      看起来它正在将其排序为文本。这可能取决于数据是如何通过的。 如果您选择其中一个单元格并按 F2(编辑)然后按 Enter 转到下一个单元格,这会更改您的数据吗?

      【讨论】:

      • 我正在从bloomberg 提取数据,所以我使用对某个股票代码的引用来提取数据,所以是的,我认为该值是一个字符串。我想知道如何工作围绕这个没有耗时的嵌套排序功能
      猜你喜欢
      • 2014-10-10
      • 1970-01-01
      • 2012-11-02
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2010-11-29
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多