【问题标题】:Data gathering and manipulation: is there something better than Excel? [closed]数据收集和操作:有什么比 Excel 更好的吗? [关闭]
【发布时间】:2011-04-05 18:44:55
【问题描述】:

我与过去使用 Excel 和电子邮件从外部联系人“收集”数据的人一起工作。这些联系人填充的单元格与复杂的方程(有时是宏)相关联,或者是大型级联单元格关系的一部分。

我们收集的所有数据都会产生多个结果,但所有这些都需要额外的询问 - 中间工作簿来询问我们从众多客户那里收到的多个工作簿、大量参考单元格(索引/匹配、动态范围)等. 很大的潜在错误。

因此,我怀疑 Excel 在以这种方式收集数据时有多好/可靠/安全。我以前创建过小型 Access 数据库,因此可以看到数据库的优点,但我从未在其中进行过复杂的计算(仅简单的表达式)。

如果我要研究迁移到更好的数据收集/管理/有用环境所需的系统/技术,我会寻找什么?像 Access 或 SQL 这样的数据库是否可以管理复杂的方程式、级联字段链接等?

非常感谢您提供任何想法或链接。

【问题讨论】:

  • 这并不是问题的真正答案,但有一些方法可以利用 Excel 功能来减少您的一些顾虑。一种方法是将数据输入放在一张纸上,将您的论坛/计算放在其他纸上,PW 保护公式表。这不会解决您的根本问题,但它可以为您节省一些时间,直到您得到解决。
  • 这与我们现在所拥有的类似,但我认为它做得不够稳健。在我开始推荐任何其他替代解决方案之前,我肯定会尽快考虑这一点。谢谢。

标签: sql database excel webforms


【解决方案1】:

另一个替代方案是 IBM Cognos TM1:它提供跨多个用户的实时方法,无需通过电子邮件发送文件。它不是关系数据库,它的 OLAP。它易于使用,可以管理大量数据,具有内置的计算引擎甚至是 Web 界面。您还可以从数据库切片到 Excel 电子表格。我曾经喜欢 Excel 和 vba,但现在我在英国与 TM1 一起担任顾问,我再也不会回到 Excel!

【讨论】:

    【解决方案2】:

    我是一名数据库人员,想到有人这样做是 Excel 而不是它所属的数据库,这让我热血沸腾。但是,这是一个很大的问题,您的用户显然是 Excel 专家,并且对 Excel 的灵活性非常满意。他们几乎肯定会讨厌数据库解决方案(失去灵活性,不得不让程序员做他们过去可以自己做的事情等),并且几乎会立即以任何可能的方式将数据导出到 Excel。如果他们(或管理层)不要求新系统,我不会给他们一个。

    【讨论】:

    • 说得好。如果用户讨厌它,最好的解决方案并不重要。
    • 我知道你强加给他们的意思。但是,我相信他们这样做是因为他们使用 Excel 来管理方程式,而且他们不知道任何其他用于捕获数据的系统。它是在他们周围长大的,我知道他们花了很多时间检查没有人篡改这些金额等。这就是为什么我想知道替代方案 - 但我肯定会轻柔地绕过他们目前的舒适度区域。
    【解决方案3】:

    您可以查看 Excel 2010 的 PowerPivot 插件。
    有了它,您可以轻松地从各种不同的来源收集数据,并且
    以各种方式链接它们。数据以某种格式存储
    可以作为多维数据集直接导入 SSAS。

    因为它仍然在 excel 中,所以您的用户不必学习新的 UI。

    【讨论】:

    • 只看 PowerPivot。看起来令人印象深刻,但我们还不是 2010 年的用户,而且我相信我们的许多客户也不是。
    • 太糟糕了。无论如何,值得一提的是:)有一个商业插件,如 powerpivot,适用于较低版本的 excel,但我不记得它的名字了。
    • 我想我会在 powerpivot 中寻找我正在研究的其他东西 - 可能正是我正在寻找的东西。
    【解决方案4】:

    您可以考虑创建一个连接到数据库的 Web 应用程序来执行此操作。这样做的一个好处是您可以将业务层和数据层分开,这通常是一种很好的做法。您还将拥有一个中心位置,信息通过该位置可以简化您的生活。

    一旦您明确区分了业务规则和数据存储,您就可以用 C#(或您选择的语言)完成您所说的大部分方程式,然后将最终结果存储在您的 SQL Server 数据库(或您的 DB选择)。

    【讨论】:

    • 关注点分离是我对任何新的数据收集系统最感兴趣的事情。目前用户看到了所有幕后工作,对我来说这是一个问题的雷区。
    • 嘿,是的,我知道这是个问题。
    • 我喜欢这个想法,因为这是我以前见过的东西,而且它是通过 Internet 收集数据的最常见方式,所以无论如何我都相信。现在与同事一起讨论使用哪些技术、在哪里托管等。
    【解决方案5】:

    您可以考虑编写自定义应用程序来接受数据输入。使用自定义应用程序,您可以控制用户输入的内容并执行特定于您的业务规则的数据验证。

    如果您负担不起应用程序开发的费用,您可以看看微软的新LightSwitch 项目。您无需编写任何代码即可快速设计表单数据应用程序。只需告诉它您的数据源,给它一些验证约束,它就会构建一个用于数据输入的前端应用程序。

    否则,您可能会在 Microsoft Access 中创建一个表单。这比让用户直接输入电子表格要好一些。

    【讨论】:

    • 这是一个有趣的技术。我对学习新东西很满意,但我的编程水平是从新手到危险。
    猜你喜欢
    • 2010-09-11
    • 1970-01-01
    • 1970-01-01
    • 2021-04-08
    • 1970-01-01
    • 2012-08-28
    • 1970-01-01
    • 2011-01-14
    相关资源
    最近更新 更多