[算表] 如何让Excel自动插入图片的宏更自动?

楼主: jbs2000 (咖啡猫)   2017-11-10 21:41:54
软件:Excel
版本:2013
在网络上找到了一段可以自动插入图片的宏,并修改自己需要的样子:
Sub 插入图片()
Dim p As Shape
For Each p In ActiveSheet.Shapes
p.Delete
Next
' 以上是删除照片
Range("b2:b3").Select
'这是点选放大头照的储存格
x = Selection.Width
y = Selection.Height
'这是取得放大头照的储存格的长宽
AA = [A2]
z1 = "B:\test\" & AA & ".jpg"
'在此可修改大头照档案路径
'Z1会等于 B:\test\员工编号.jpg
ActiveSheet.Pictures.Insert(z1).Select
'插入大头照
Selection.ShapeRange.LockAspectRatio = msoFalse
Selection.Height = y
Selection.Width = x
Selection.ShapeRange.IncrementLeft 1
Selection.ShapeRange.IncrementTop 1
'设定大头照等于储存格长宽
Range("C2:C3").Select
'这是点选放身份证的储存格
x = Selection.Width
y = Selection.Height
'这是取得放身份证的储存格的长宽
BB = [A3]
z2 = "B:\test\" & BB & ".jpg"
'在此可修改身份证档案路径
'Z2会等于 B:\test\身份证字号.jpg
ActiveSheet.Pictures.Insert(z2).Select
'插入身份证
Selection.ShapeRange.LockAspectRatio = msoFalse
Selection.Height = y
Selection.Width = x
Selection.ShapeRange.IncrementLeft 1
Selection.ShapeRange.IncrementTop 1
'设定身份证等于储存格长宽
End Sub
目前我是在A2和A3输入档名,“再”执行宏,便可以插入图片,
可是我需要的是──一输入档名按下Enter后,便会插入
我该如何修改这个宏呢?
麻烦指导一下,感谢!
作者: soyoso (我是耀宗)   2017-11-10 21:46:00
worksheet_change触发,变量AA、BB取得触发储存格target的内容
楼主: jbs2000 (咖啡猫)   2017-11-10 21:56:00
好,我先来研究一下触发怎么做
作者: soyoso (我是耀宗)   2017-11-10 22:00:00
限缩触发范围可判断,range.row和range.column、range.address或intersect
楼主: jbs2000 (咖啡猫)   2017-11-10 22:03:00
请问这个触发,是插入在哪个部分,或是重新一个sub呢?我知道我问得很蠢,但我对宏真的不太有办法...
作者: soyoso (我是耀宗)   2017-11-10 22:30:00
原po之前问过类似问题,回复上和本篇回文差不多,可参考#1NcsWhvQ

Links booklink

Contact Us: admin [ a t ] ucptt.com