我似乎无法弄清楚是否可以使用 Excel VBA 代码管理我的远程 Mongo 数据库。我希望能够做我能用 Node.js 做的事情,即连接、查找、替换、插入文档等等。 我听说我必须安装 MongoDB ODBC 驱动程序,并且我已经完成了,但是下一步是什么?我什至在我的“工具”>“参考文献”列表中找不到它。
我不知道你到底在寻找什么,因此我只能给出通用答案。请注意,Excel/VBA/COM 可能已经有 40 岁了,MongoDB 是一种现代工具。以下几种可能性:
首先,使用MongoDB Connector for BI您只能查询来自MongoDB的数据,它不提供任何插入或更新。
MongoDB Connector for BI 是一项连接到 MongoDB 并将 BSON 文档转换为 SQL/Table 样式数据的服务。然后,您必须安装 MongoDB BI Connector ODBC 驱动程序。请注意安装与 Excel 具有相同体系结构(即 32 位与 64 位)的 ODBC 驱动程序。安装后,您将在 ODBC 管理器驱动程序中看到它:
下一步是为您的连接创建 DSN。您可以在此处输入数据源(即上面 MongoDB Connector for BI 的服务器和端口)和凭据。然后您就可以在 Excel 等工具中使用 DSN。
您可以在 .NET 中编写程序集(即 DLL),例如 C# 并使用 MongoDB C# 驱动程序。当您使程序集“COM 可见”时,您可以在 VBA 宏中使用 DLL。但根据您的要求,您必须编写大量代码。
另一种选择可能是从 Excel 创建 CSV 文件。然后调用 mongoimport (使用 Shell())将 CSV 文件导入到 MongoDB 中。使用
mongoexport
,您可以执行相反的操作,即从 MongoDB 到 Excel。您还可以从 STDIN/STDOUT 读取和写入,而不是文件。
但是,您只能导入或导出数据,几乎无法查询或更新任何内容。除了
mongoimport
和 mongoexport
,您还可以将数据传递到 Mongo Shell mongosh
。在那里你会有更多的灵活性。
无论如何,我个人的建议是:忘记 Excel 和 VBA,使用合适的 MongoDB IDE,例如 Compass、Studio3T 或 DBeaver。它们都是免费提供的。