【问题标题】:Can recordset values be used as Excel index values?记录集值可以用作 Excel 索引值吗?
【发布时间】:2014-08-22 10:42:34
【问题描述】:

我有一个从 Oracle 数据库获取设置的 Excel 电子表格。我试图通过使用记录集值(工作表的名称)调用工作表来更新每个工作表的行高。 rsSettings(1) 是一个字符串值,它是工作表名称。 rsSettings(2) 是行号,rsSettings(3) 是行高。这给了我一个类型不匹配错误:

Do Until rsSettings.EOF
    WB.Worksheets(rsSettings(1)).Cells(rsSettings(2), 1).RowHeight = rsSettings(3)
    rsSettings.MoveNext
Loop

如果我将 rsSettings(1) 替换为文字字符串值或从 rsSettings(1) 获取其值的字符串变量,或者如果我执行 CStr(rsSettings(1))(如我刚刚发现的那样),这确实有效。 (而且,我可以将值写入单元格。)

因此,虽然现在使用 CStr() 解决了问题,但是否可以将记录集值用作索引值所在的字符串值?

【问题讨论】:

  • 尝试 CDbl(rsSettings(3)) 将其强制转换为 Double 精度数值。
  • 尝试专门使用该字段的.Value 属性,而不是依赖默认行为。

标签: vba excel


【解决方案1】:

使用 .Value 适用于字符串。谢谢!

【讨论】:

    猜你喜欢
    • 2012-08-05
    • 2021-01-10
    • 1970-01-01
    • 2018-01-12
    • 2016-07-11
    • 2017-10-28
    • 1970-01-01
    • 2015-04-29
    • 1970-01-01
    相关资源
    最近更新 更多