【问题标题】:add record and Manipulating recordset to contain formulas添加记录和操作记录集以包含公式
【发布时间】:2011-12-09 18:43:07
【问题描述】:

基本信息: oracle、vb6 和 excel,使用 ADO 获取记录集。

当我在记录集的末尾添加一条新记录时,我在操作记录集时遇到了问题。最后一条记录应包含公式,例如 column2 的计数、column3 中值的总和以及 sum(col3) 和 col2 的除法

记录集中的原始列

CLIENT 此列的末尾应显示 Total

PRINCIPAl 此列末尾应显示平均值(Principal)

GROSS_LIQ_RATE 此列的末尾应显示平均值(总)/总和(本金)

当我添加记录集时,它给出了一个错误 我是这样添加的:

.AddNew     .[columnname] = Sum(rst.Fields(1))      .Update

感谢您对此进行调查。

【问题讨论】:

  • 你的问题是可以理解的......请编辑你的问题并向我们解释你有什么,你打算做什么,你尝试了什么以及错误在哪里(只要你给我们你构建的完整代码)

标签: excel vb6 ado recordset


【解决方案1】:

我不相信你可以这样使用Sum()。您将使用application.worksheetfunction.sum(),因为 sum 不是 vba 函数。

其次,我认为rst.fields(1) 不会返回该字段中的所有值。您需要遍历记录集,并为每条记录汇总 rst.fields(1).value

从设计的角度来看....您要查找的所有值都可以通过 SQL 轻松计算,我认为没有任何理由将数据拉入记录集以执行这些操作。

【讨论】:

  • 我将尝试详细说明:假设我们有一个报告类型,显示 2007、2008、2009、2010 年的本金金额。相应的值在记录集中的第三个字段中。所以这些值将作为 FYPeriod col2 Principal 2007 somevalue 230000 2008 somevalue 431280 2009 somevalue 343455 总和(以上全部在 Principal 中) 有没有办法只在 sql 中实现这一点?
  • 对我来说,编写第二个省略年份编号的 SQL 语句似乎更省力(从而显示所有年份的总数)。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多