excel - 如何根据数据库查询结果的大小缩小或扩展表
问题描述
我有一个 oracle 数据库,我可以使用 vba 读取/写入数据。我想为我的数据库构建一种 excel 用户界面。目前,我的程序看起来像这样:我有一个包含几列和 1 行的表,如下所示:
--------------------------------------------------------
| Name | Postal-Code | Favorit Color | Body-Mass-Index |
--------------------------------------------------------
| | | | |
--------------------------------------------------------
根据我从 excel 触发的查询,我想用我的数据库中的数据填充这个表。
我的问题:如何使表大小(当前为 1 行)适应我的数据库返回的行数?此外,我还希望能够从表中读取数据(例如在编辑后)并将其发送到数据库。如何使我从表中选择所有包含数据的行?
我应该补充一点,我对 excel 和 vba 了解不多,所以使用表格来完成所有这些只是我的一个想法,如果您认为 excel 中还有其他东西更适合我想要的功能,请告诉我。
解决方案
虽然从技术上讲,这不是您想要的答案,但我建议Oracle 使用 ODBC 接口将您的电子表格连接到数据。您可以在 Oracle 中编写自己的过滤器/视图/查询并仅提取该数据。
为此,在 Excel 中,切换到Developer功能区并单击Record New Macro。将宏称为“ OraDbConnect ”(如果需要,请设置其他选项)。
现在切换到Data功能区,从From Other Sources下拉列表中选择From Data Connection Wizard。
从列表中选择ODBC DSN 。
...并从那里选择您的数据表。
现在命名将用于连接到数据库的连接文件(明智的做法是将此文件放在只读共享上,以便所有需要它的用户都可以使用它)。
从这里您可以选择要放置数据的位置...
使用底部的“属性...”按钮,您可以决定是否以及多久刷新电子表格中的数据,从而无需使用复杂的 VBA 代码来更新它。
从那里,我会说,您最好的选择是隐藏您的原始数据表并使用您实际想要显示的数据创建数据透视表或其他过滤列表。
哦!不要忘记停止录制你的宏!;o)
推荐阅读
- unreal-engine4 - 在虚幻引擎 4 中,提高麦克风录音电平的最佳方法是什么?
- wpf - WPF - 数据网格 - 显示一个文本框以在选择其行时由用户设置值
- wordpress - 向 WooCommerce REST API 公开二级货币
- angular - 为什么我无法在我的 HTML 页面中显示 Observable 数据?
- vue.js - 在 vuejs 组件中推送
- swift - URLSession 在 LTE 和 5G 上多次下载后限制带宽使用
- google-sheets - 如何从需要登录的网站获取信息
- python - 如何使用 Canny 去除图像背景
- java - Apache Spark:java.lang.NoClassDefFoundError V2TableWithV1Fallback
- python-3.x - 对于大量边,如何在有向无环图中迭代从根节点到叶节点的每条路径