设为首页收藏本站Access中国

Office中国论坛/Access中国论坛

 找回密码
 注册

QQ登录

只需一步,快速开始

返回列表 发新帖
楼主: roych
打印 上一主题 下一主题

Access挑战Excel第十五期:图片浏览

[复制链接]

点击这里给我发消息

1#
发表于 2016-4-7 11:01:40 | 显示全部楼层


里面是一个工作簿两个工作表,分别是列表模式和按钮模式。
我这个就用到了3行代码
  1. Private Sub Worksheet_SelectionChange(ByVal Target As Range)
  2. Application.Calculate
  3. End Sub
复制代码
不过里面用到了公式,和技巧。
用到的函数 cell函数 indirect函数
用到的技巧有照相机,定义名称。

这个应该是最容易学的做法,不知道大神们有没有办法优化。

这个做的太简陋了,不能随着文件夹的内容更改图片增删数量,如果要实现这些,需要不少的代码。我想到了方法,不过好像不知道代码的语法。。。。

@小妖同学   @蓝色幻想

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x

点击这里给我发消息

2#
发表于 2016-4-7 12:45:51 | 显示全部楼层
用vlookup的话不能做列表模式吧,我这个也要预先插入图片,不过这个可以通过代码解决,但是我不会写。。。。。

点击这里给我发消息

3#
发表于 2016-4-7 16:28:56 | 显示全部楼层

谢谢

不过我想的不是批量插入图片,是动态插入图片,比如根据文件夹内的图片,每次打开工作簿,添加新的人,比如 文件夹内 添加了一个照片,文件名是周伯通131022111111111111男20160407后勤部13111111111,下次在打开这个工作簿,就自动添加这个人的信息和照片在表里了。或者,在表内新添加一个人的信息,会自动在添加与这个人名字对应文件名的照片。

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x

点击这里给我发消息

4#
发表于 2016-4-7 18:10:14 | 显示全部楼层
roych 发表于 2016-4-7 17:30
大概需要执行一个插入图片的操作吧。
方法1、增删改时,先删除所有旧的图片,然后批量插入(链接已经给 ...

应该不用吧,我想的是打开工作簿的时候,先用dir提取文件夹里的图片文件名与最后修改时间存储在数组变量里,然后在用表内现在有人员信息与之作对比,多出来的图片直接添加,已经存在图片对比最后修改日期,如果有变动就直接修改,没变动就不用动了,这样不知道能不能实现,如果能,占用内存大小如何。。。。。

点击这里给我发消息

5#
发表于 2016-4-7 18:17:56 | 显示全部楼层
roych 发表于 2016-4-7 17:30
大概需要执行一个插入图片的操作吧。
方法1、增删改时,先删除所有旧的图片,然后批量插入(链接已经给 ...

VBA可以直接调用CMD执行dir命令然后存储结果吗

点评

1、VBA里本身有dir函数,用于判断文件是否存在。 2、如果执行cmd的话,可以考虑使用shell函数,两者非常相似。大部分命令都可以改为:shell"命令字符串" 来执行。 3、内存占用情况可能会因为文件的多少受影响   发表于 2016-4-7 20:14

点击这里给我发消息

6#
发表于 2016-4-8 09:36:48 | 显示全部楼层
可以做到子窗体效果的,我那个文件里面的列表模式就是

点击这里给我发消息

7#
发表于 2016-4-12 09:33:51 | 显示全部楼层
pureshadow 发表于 2016-4-11 20:26
如果真的做工牌打印,我也许会用Word的邮件合并,那样不需要把大把的图片放在一个工作簿里。

妖姐,有邮件合并的教程链接吗,我一点都不懂。。。

点击这里给我发消息

8#
发表于 2016-4-12 11:11:23 | 显示全部楼层
pureshadow 发表于 2016-4-12 10:39
不急,回头我做一个。

谢谢妖姐,以后我改名叫妖弟弟得了
您需要登录后才可以回帖 登录 | 注册

本版积分规则

QQ|站长邮箱|小黑屋|手机版|Office中国/Access中国 ( 粤ICP备10043721号-1 )  

GMT+8, 2024-5-9 01:15 , Processed in 0.101143 second(s), 35 queries .

Powered by Discuz! X3.3

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表