Excel精英培训网

 找回密码
 注册
数据透视表40+个常用小技巧,让你一次学会!
查看: 2076|回复: 1

[已解决]求对列表框一部分代码修改下,目的是不要每次添加一个了,我只需要一个

[复制链接]
发表于 2011-11-19 17:36 | 显示全部楼层 |阅读模式
下面代码是
将列表框添加到第一张工作表中,并为该列表框设置填充区域。
Private Sub CommandButton1_Click()
u = [a65536].End(xlUp).Row
With Sheet2
    Set lb = .Shapes.AddFormControl(xlListBox, 100, 10, 100, 100)
    lb.ControlFormat.ListFillRange = "A1:A" & u
End With
End Sub

这个代码每一次都添加一个列表框,点击10次就添加10个,我想在原来的-----列表框1---基础上进行操作,
操作的目的是实时的把A列的值全部写进列表框,但是不能多余的空行,所以这里的 变量 U  就起作用了

求高人对  我的代码进行修改,主要是把变量 lb 设置下,我不懂怎么设置!对这一句进行转换下  Set lb = .Shapes.AddFormControl(xlListBox, 100, 10, 100, 100)  
附件如下 新建 Microsoft Office Excel 工作表.rar (44.1 KB, 下载次数: 3)
excel精英培训的微信平台,每天都会发送excel学习教程和资料。扫一扫明天就可以收到新教程
发表于 2011-11-19 17:58 | 显示全部楼层    本楼为最佳答案   
  1. Private Sub CommandButton1_Click()
  2.     On Error Resume Next
  3.     u = [a65536].End(xlUp).Row
  4.     With Sheet2
  5.         .Shapes("NM").Delete
  6.         Set LB = .Shapes.AddFormControl(xlListBox, 100, 10, 100, 100)
  7.         LB.Name = "NM"
  8.         LB.ControlFormat.ListFillRange = "sheet1!A1:A" & u
  9.     End With
  10. End Sub
复制代码
回复

使用道具 举报

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

本版积分规则

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

GMT+8, 2024-3-29 17:19 , Processed in 0.311899 second(s), 10 queries , Gzip On, Yac On.

Powered by Discuz! X3.4

Copyright © 2001-2020, Tencent Cloud.

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