Excel精英培训网

 找回密码
 注册
数据透视表40+个常用小技巧,让你一次学会!
楼主: hhss123

[已解决]菜鸟寻求帮忙改代码!

[复制链接]
发表于 2012-10-21 14:51 | 显示全部楼层
本帖最后由 hwc2ycy 于 2012-10-21 15:08 编辑

在03里测式自适应高度又发现一个问题。图片删除后,行高没变,原有的小图一旦插入进来,反倒尺寸比例又不对了。重新改了下,在删除图片对象后,自动把行高复位。
  1. Private Sub CommandButton1_Click()
  2.     Dim oShp As Shape
  3.     Dim rng As Range, sPic As String
  4.     Application.ScreenUpdating = False
  5.     For Each oShp In Shapes
  6.         With oShp
  7.             If .Name Like "*Picture*" Or .Name Like "*图片*" Then .Delete
  8.         End With
  9.     Next
  10.     Range("a2:a" & [a65536].End(xlUp).Row).RowHeight = Range("a1").RowHeight
  11.     For Each rng In Range("a2:a" & [a65536].End(xlUp).Row)
  12.         sPic = ThisWorkbook.Path & "" & rng & ".jpg"
  13.         If Dir(sPic) <> "" Then
  14.             Pictures.Insert(sPic).Select
  15.             'Selection.ShapeRange.LockAspectRatio = msoFalse
  16.             With rng
  17.                
  18.                 Selection.Left = .Offset(0, 3).Left + 2
  19.                 Selection.Top = .Offset(0, 3).Top + 2
  20.                 Selection.Height = .Offset(0, 3).Height
  21.                 Selection.Width = .Offset(0, 3).Width - 2
  22.                 .RowHeight = Selection.Height + 2
  23.             End With
  24.         End If
  25.     Next
  26.     Application.ScreenUpdating = True
  27.     [d1].Select
  28. End Sub
复制代码
excel精英培训的微信平台,每天都会发送excel学习教程和资料。扫一扫明天就可以收到新教程
回复

使用道具 举报

 楼主| 发表于 2012-10-21 14:56 | 显示全部楼层
回复

使用道具 举报

发表于 2012-10-21 15:08 | 显示全部楼层    本楼为最佳答案   
hhss123 发表于 2012-10-21 14:56
老大最终确定是10楼的代码吗!

11楼的吧。越是后面贴的,就越好点。
回复

使用道具 举报

 楼主| 发表于 2012-10-22 23:49 | 显示全部楼层
老大你看下!这个是用11楼是代码!10版里使用情况!A情况

A情况

A情况
回复

使用道具 举报

 楼主| 发表于 2012-10-22 23:52 | 显示全部楼层
老大你看下!这个是用11楼是代码!10版里使用情况!B情况
回复

使用道具 举报

 楼主| 发表于 2012-10-22 23:59 | 显示全部楼层
10中使用的情况请看

10中

10中
回复

使用道具 举报

 楼主| 发表于 2012-10-23 00:01 | 显示全部楼层
用的是11楼的代码!使用其来当删选数字列!条件大于或等于3时!图片就显示不对了
有些是图片重叠的  有些是没有正确归位!
回复

使用道具 举报

 楼主| 发表于 2012-10-23 00:12 | 显示全部楼层
代码要怎么改呀!
回复

使用道具 举报

 楼主| 发表于 2012-10-23 00:17 | 显示全部楼层
老大看下!是不是代码又要改呀!还是我弄错了
老大看下.jpg
回复

使用道具 举报

发表于 2012-10-23 00:20 | 显示全部楼层
这个把图片的属性设置下应该就可以了。
在代码 Pictures.Insert(sPic).Select
下加一行
  1. Selection.Placement = xlMoveAndSize
复制代码
试试
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|手机版|Archiver|Excel精英培训 ( 豫ICP备11015029号 )

GMT+8, 2024-5-5 11:58 , Processed in 0.321975 second(s), 11 queries , Gzip On, Yac On.

Powered by Discuz! X3.4

Copyright © 2001-2020, Tencent Cloud.

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