Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Column <> 1 Then Exit Sub
On Error Resume Next
Dim mr As Range
Set mr = Range("b" & Target.Row)
mr.Select
ML = mr.Left
MT = mr.Top
MW = mr.Width
MH = mr.Height
ActiveSheet.Shapes.AddShape(msoShapeRectangle, ML, MT, MW, MH).Select
Selection.ShapeRange.Fill.UserPicture _
ActiveWorkbook.Path & "\图片\" & mr.Value & ".jpg" '当前文件所在目录下以当前单元内容为名称的.jpg图片
Range("a" & Target.Row + 1).Select
End Sub
谢谢你!windblast 这是excel里的代码。主要功能我也试过了,就是如果把图片的位置改成其他列(不在B列)就无法完成那种效果。(b列,当前行) ,你能把它改到其它列吗?谢谢。
è°¢è°¢ä½ ï¼windblast è¿æ¯exceléç代ç ã主è¦åè½æä¹è¯è¿äºï¼å°±æ¯å¦ææå¾ççä½ç½®æ¹æå ¶ä»åï¼ä¸å¨Båï¼å°±æ æ³å®æé£ç§ææã(bå,å½åè¡) ï¼ä½ è½æå®æ¹å°å ¶å®ååï¼è°¢è°¢ã
追çSet mr = Range("b" & Target.Row)
å°bæ¹æä½ æ³è¦çåã
ççå¾æè°¢ä½ ãä¸è¿è¿ä¸è¡åï¼å¾ç没æ¾ç¤ºåºæ¥ï¼åªæ¯ä¸ä¸ªå¾ççæ¡ã没æå¾çã
追çå¦æåªææ¡ï¼è没æå¾çï¼é£ä¸è¬æ¥è¯´æ¯å ä¸ºä½ è°ç¨çå¾çè·¯å¾æ²¡å对ã