【问题标题】:Complex Import/Export Data Access/Excel复杂的导入/导出数据访问/Excel
【发布时间】:2013-05-01 07:23:45
【问题描述】:

我们的组织获得了一个电子表格模板,可以批量导入网站。

对于用户来说更新是一件很麻烦的事,因为它以以下方式在一个页面上构建:

 |        A         |        B         |        C         |
1| ProvidersSection |                  |                  |
2| ProviderHeading1 | ProviderHeading2 | ProviderHeading3 |
3|   ProviderData1  |  ProviderData2   |   ProviderData3  |
4|   VenuesSection  |                  |                  |
5|  VenuesHeading1  |  VenuesHeading2  |  VenuesHeading3  |
6|    VenuesData1   |   VenuesData2    |    VenuesData3   |
7|   OpportSection  |                  |                  |
8|  OpportHeading1  |  OpportHeading2  |  OpportHeading3  |
9|    OpportData1   |   OpportData2    |    OpportData3   |

我不知道这是否清楚,但基本上它是 3 个相互堆叠的表格:Providers、Venues 和 Opportunities。

例如,Provider 的表由 A1 中的“ProvidersSection”文本表示,然后在该行下方(第 2 行)是 Providers 表的列标题,然后在该行下方(第 3 行)是数据对应于提供程序表的列标题。

每个“数据”部分不限于我在上面示例中勾勒的 1 行,因此如果提供者表有 2 条记录,则场所部分将被下推到第 5 行。

我想做的是将此电子表格的数据保存在 3 个 Access 表中,并使用 VBA 以上面指定的格式填充电子表格。

我之前做过一些 VBA 导出,但还不是很复杂,所以我可以用一些指针来做,特别是:

  • 这是最好的方法是将 Access VBA 导出到 Excel 还是从 Access 导入 Excel VBA?
  • 什么方法可以让我在 Excel 中指定要导出数据的确切位置?
  • 如何确保每个表的数据的起始位置都在前表的最后一条记录之后?

非常感谢

【问题讨论】:

    标签: ms-access excel vba


    【解决方案1】:
    1. 两者都可以,这取决于您自己的偏好...但是,如果围绕此数据的所有其他功能都将位于 Access 中,我会首先考虑将其也放入 Access 中。
    2. 您可以通过 Excel 应用程序对象 > 工作簿对象 > 工作表对象 > 范围对象直接从 VBA 代码中引用范围
    3. 创建引用这些位置的范围对象或有一个计数器以数字方式跟踪(计算行数)

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2018-10-28
      • 2020-09-19
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-05-25
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多