【问题标题】:Output VBA Array of Doubles to One Cell in Excel将双精度数的 VBA 数组输出到 Excel 中的一个单元格
【发布时间】:2019-07-15 10:20:49
【问题描述】:

我正在尝试使用 VBA 将 Doubles 数组的内容转储到 Excel 中的单个单元格中。

我找到了an Answer,它解决了 Strings 或 Variant 的问题,但不适用于 Double。

Dim arr(1 To 3) As Double
arr(1) = 0.81
arr(2) = 0.95
arr(3) = 1.74

Worksheets("Test").Cells(1,1).Value = dump(arr, ";")

最后一行应该将数组中的所有值写入指定的单元格。

编辑:将 0.81 更改为 0.81 等(德国系统与国际标准)

【问题讨论】:

  • 只需循环并将值连接成一个字符串,使用任何你想要的分隔符。
  • Join(WorksheetFunction.Index(arr, 1, 0), ";")
  • 原代码也能正常工作。只需将“转储”替换为“加入”并更改数字格式(点而不是逗号);数组作为变体。结果:0.81;0.95;1.74

标签: arrays excel vba


【解决方案1】:

无论如何它都会是一个字符串,循环或转置或使用索引(漂亮的 omegastripes): (加上将 , 更改为 .)

Dim arr(1 To 3) As Double
arr(1) = 0.81
arr(2) = 0.95
arr(3) = 0.74

Worksheets("Test").Cells(1, 1).Value = Join(Application.Transpose(Application.Transpose(arr)), ";")

【讨论】:

    猜你喜欢
    • 2013-09-03
    • 2022-01-09
    • 1970-01-01
    • 1970-01-01
    • 2014-07-17
    • 2020-05-24
    • 2015-08-12
    • 1970-01-01
    • 2012-09-29
    相关资源
    最近更新 更多