从Access打开Excel文件并将图片复制到Access窗体

时间:2010-03-27 12:46:01

标签: ms-access vba excel-vba ms-access-2003 excel

所以我有一个excel工作簿,它有一个很好的shaperange对象的全局映射。使用一些非常简单的代码,我可以更改颜色,将国家/地区的分组和取消分组转换为数组等等......并且它可以很好地工作。但是,我想把它带入Access。

因此,我可以手动将所有形状复制并粘贴到访问表单中,但随后它们将成为图片,我无法更改国家/地区的颜色(shaperange对象),以使地图以excel方式交互式地进行操作。

所以我想我知道如何从访问中使用excel函数,以及如何从访问中打开excel。有没有办法从excel中复制一个对象(我知道我每次都要复制的文件名和形状名称),然后将其恢复为访问粘贴在表单上?

非典型的,我知道,我所有的Access问题都是。谢谢!

编辑:

我很乐意详细阐述我的半疯狂想法。所以我知道如何打开一个新的excel实例,或者在场景后面打开一个模板(没有实际使它可见)。我知道如何使用vba从访问模块中预先形成excel任务.....甚至可以从访问中运行公式和excel函数。我有这个与excel模块一起使用的交互式地图程序,但我想让它们成为访问表单的一部分。

所以要回答下面的问题,如果我能从excel中找到复制和image / shaperange对象的缺失链接,并将其复制到访问表单中,那么我可以编写始终从我的Excel模板中获取形状的代码在复制和粘贴到访问表单之前格式化excel中的形状,其中可以进行布局格式化。当用户在表单上选择某些内容时,我想要包含具有相对颜色/阴影等的全局地图区域...访问将始终从文件中的对象集合获取所需的预定义地图片段/ excel模板。我的想法是在选择之后,我会格式化形状,就像我已经使用vba,然后ole.copy和ole.paste回到访问形式。如果它是那时的图片,那没关系。至少为形状本身

很多代码,但我认为值得尝试将excel和这个基于shaperange对象的地图合并到一个像访问表单这样的表单环境中!很奇怪但它可能运作良好?一些奇怪的非典型事物已成为我的访问数据库中的主要内容。

1 个答案:

答案 0 :(得分:1)

嗯,你问这个:

“所以我可以复制并手动将所有形状粘贴到访问表单中,但随后它们会变成图片而且我无法更改国家/地区的颜色(shaperange对象)以使其具有地图在excel中以交互方式进行交互。

“所以我想我知道如何从访问中使用excel函数,以及如何从访问中打开excel。有没有办法从excel复制对象(我知道文件名和形状名称我的意思是每次复制),并将其重新访问以粘贴到表单上?“

也许一些潜在的响应者会问自己为什么如果目前的解决方案不能很好地粘贴到Access表单中,因为“然后它们会成为图片”,但是可以自动执行您认为不合格的相同程序。

也许改述这个问题会有所帮助。