下拉时遇到vba空格代码停止 vba代码怎么写

关闭excel时如果某些特定的格空白的话弹出对话框并终止关闭动作的宏_百度知道
关闭excel时如果某些特定的格空白的话弹出对话框并终止关闭动作的宏
专家们我希望打开excel表的时候宏就开始运行,不用额外点击宏再开始运行。另外,如果某些特定的格空白的话,不但要弹出对话框还要终止excel的关闭动作。谢谢了
我有更好的答案
以A1单元格为例,楼主看看是否符合要求吧!Private Sub Workbook_BeforeClose(Cancel As Boolean)
If IsEmpty([a1]) Then
MsgBox &A1单元格为空,不能关闭!&
Cancel = True
End IfEnd Sub
采纳率:46%
来自团队:
Private Sub Workbook_BeforeClose(Cancel As Boolean)
If IsEmpty(ThisWorkbook.Worksheets(1).Range(&C5&)) Or IsEmpty(ThisWorkbook.Worksheets(1).Range(&D9&)) Then
MsgBox &单元格C5、D9不能为空!&, vbExclamation
Cancel = True
End IfEnd Sub(说明:把以上代码复制到ThisWorkbook代码中,Worksheets(1)中的数字1表示Excel中的第一个工件表,单元格C5、D9可修改成别的单元格,亦可按格式使用or指令继续增加判定条件)
为您推荐:
其他类似问题
excel的相关知识
换一换
回答问题,赢新手礼包
个人、企业类
违法有害信息,请在下方选择后提交
色情、暴力
我们会通过消息、邮箱等方式尽快将举报结果通知您。查看: 1358|回复: 13
用VBA代码实现vlookup函数功能时但中间有空行时就停止了
阅读权限20
在线时间 小时
本帖最后由 gyp0117 于
23:10 编辑
用VBA代码实现vlookup函数功能时但数据中间有空行时就停止了,只能第一段空格前的就可以,后面的数据复不过来,还个问题就是在一个有数据的工作表中,用VBA实现增加一行(不要用插入,那样打乱表中原有的数据),增加那行下面原有数据自动往下移动一行,设置一按钮,按一下就增加一行,这两个问题困扰我半年的时间了,跪求各位大师了!!!!拜托了!!!
23:10 上传
点击文件名下载附件
14.18 KB, 下载次数: 14
阅读权限70
在线时间 小时
干吗要留空格
阅读权限20
在线时间 小时
干吗要留空格
如果不留空格一个凭证就录不下,
阅读权限70
在线时间 小时
无须按钮,F列输入,回车后自动返回对应值:
(19.28 KB, 下载次数: 40)
23:23 上传
点击文件名下载附件
阅读权限20
在线时间 小时
无须按钮,F列输入,回车后自动返回对应值:
谢了,你的代码完美的实现了我需要的功能,谢谢了
阅读权限20
在线时间 小时
谢了,你的代码完美的实现了我需要的功能,谢谢了
大师,这个程序好像只是手工录入才行,复制的数据没有反应!!!!
阅读权限70
在线时间 小时
大师,这个程序好像只是手工录入才行,复制的数据没有反应!!!!
好像开始没说复制的问题哈。怪我没考虑全面。
试试:Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Column && 6 Then Exit Sub
If Target.Row & 2 Then Exit Sub
With Sheets(&sheet1&)
r = .Cells(Rows.Count, 1).End(3).Row
arr = .Range(&a1:f& & r)
End With
Dim cell As Range
For Each cell In Target.Cells
& & If cell && && Then
& && &&&For i = 1 To UBound(arr)
& && && && &If arr(i, 1) = cell.Value Then temp = Array(arr(i, 2), arr(i, 3), arr(i, 4), arr(i, 5), arr(i, 6)): Exit For
& && &&&Next
& && &&&cell.Offset(, 1).Resize(1, 5) = temp
& & End If
Next
End Sub复制代码
阅读权限20
在线时间 小时
好像开始没说复制的问题哈。怪我没考虑全面。
周老师,&&可以加上注释吗,
阅读权限70
在线时间 小时
周老师,&&可以加上注释吗,Private Sub Worksheet_Change(ByVal Target As Range) '工作表改变时触发本事件(包括修改、双击单元格等)
& & If Target.Column && 6 Then Exit Sub '不是第6列退出
& & If Target.Row & 2 Then Exit Sub '第1行退出
& & With Sheets(&sheet1&)
& && &&&r = .Cells(Rows.Count, 1).End(3).Row '返回A列最末非空行号
& && &&&arr = .Range(&a1:f& & r) '将目标数据区域装入数组
& & End With
& & Dim cell As Range
& & '嵌套循环
& & For Each cell In Target.Cells '在发生改变的区域内循环
& && &&&If cell && && Then '非空时进行下面的语句
& && && && &For i = 1 To UBound(arr) '数组内循环,如果与刚才编辑的内容相同,则取其后面5列的内容交给临时变量temp
& && && && && & If arr(i, 1) = cell.Value Then temp = Array(arr(i, 2), arr(i, 3), arr(i, 4), arr(i, 5), arr(i, 6)): Exit For
& && && && &Next
& && && && &cell.Offset(, 1).Resize(1, 5) = temp '写入
& && &&&End If
& & Next
End Sub复制代码
阅读权限20
在线时间 小时
好像开始没说复制的问题哈。怪我没考虑全面。
周老师,这不能怪您,是我没说清楚,谢谢了,老师我还有个问题请教一下,我指定查找并复制那列,而其他左右的都不查找复制,可以做吗,我这几天想修改您程序却始终没有达到目的
最新热点 /2
买书正当时!京东ExcelHome畅销书每满100-50元,机会不容错过!
买书正当时!当当网ExcelHome畅销书每满200-100元,当当活动时间:即日起至6月2日,机会不容错过!
玩命加载中,请稍候
玩命加载中,请稍候
Powered by
本论坛言论纯属发表者个人意见,任何违反国家相关法律的言论,本站将协助国家相关部门追究发言者责任! & & 本站特聘法律顾问:徐怀玉律师 李志群律师查看: 840|回复: 8
如何去除重复值和空格,并作为复合框的下拉内容
阅读权限20
在线时间 小时
& & & & & & & &
& & 如附件,在跳出来的UserForm1中的复合框中,将H列,从H3开始以下的内容作为数据源,作为下拉框的内容,注意数据有重复,有空格,这些都需要自动去除。
& & 请老师帮忙写下代码。谢谢!
14:51 上传
点击文件名下载附件
14.75 KB, 下载次数: 16
阅读权限100
在线时间 小时
Private Sub UserForm_Initialize()
Dim arr, i&, d As Object
Set d = CreateObject(&scripting.dictionary&)
arr = Range(&h1:h& & Cells(Rows.Count, &h&).End(3).Row)
For i = 1 To UBound(arr)
& & If arr(i, 1) && && And Not d.exists(arr(i, 1)) Then
& && &&&d(arr(i, 1)) = &&
& && &&&ComboBox1.AddItem arr(i, 1)
& & End If
Next
Set d = Nothing
End Sub
复制代码
阅读权限100
在线时间 小时
(18.35 KB, 下载次数: 46)
15:00 上传
点击文件名下载附件
阅读权限95
在线时间 小时
List属性,速度很快:
Private Sub UserForm_Initialize()
& & Dim arr, i&, d As Object
& & Set d = CreateObject(&scripting.dictionary&)
& & arr = Range(&h1:h& & Cells(Rows.Count, &h&).End(3).Row)
& & For i = 1 To UBound(arr)
& && &&&d(arr(i, 1)) = &&
& & d.Remove &&
& & ComboBox1.List = d.keys
老师好,那么多章,我总想伸手抓一个走。&
阅读权限20
在线时间 小时
List属性,速度很快:
Private Sub UserForm_Initialize()
& & Dim arr, i&, d As Object
感谢老师,完美解决问题。
阅读权限20
在线时间 小时
List属性,速度很快:
Private Sub UserForm_Initialize()
& & Dim arr, i&, d As Object
老师,您好。能麻烦再将代码修改下嘛,事情是这样的,运行后往往会跳出错误代码:32811。。请问这个老师该如何解决。我把代码 :& &d.Remove &&& &删除,就不会跳错误代码了。但这样的话,复合框的下拉框就会出现空格了。
阅读权限95
在线时间 小时
老师,您好。能麻烦再将代码修改下嘛,事情是这样的,运行后往往会跳出错误代码:32811。。请问这个老师 ...
If d.Exists(&&)&&Then d.Remove &&
阅读权限20
在线时间 小时
哥们儿,今天看了你的代码,解决了困扰我的问题,但是有些地方看不太懂,可否讲解一下,把代码大概讲一下
最新热点 /2
买书正当时!京东ExcelHome畅销书每满100-50元,机会不容错过!
买书正当时!当当网ExcelHome畅销书每满200-100元,当当活动时间:即日起至6月2日,机会不容错过!
玩命加载中,请稍候
玩命加载中,请稍候
Powered by
本论坛言论纯属发表者个人意见,任何违反国家相关法律的言论,本站将协助国家相关部门追究发言者责任! & & 本站特聘法律顾问:徐怀玉律师 李志群律师查看: 133|回复: 6
控件下拉菜单如何能实现再次打开工作表的时候是空白的
阅读权限20
在线时间 小时
& & & & & & & &
(10.27 KB, 下载次数: 2)
19:12 上传
点击文件名下载附件
两个需求,
一,再次打开工作表的是空白的
二,在保存内容后自动返回空白选项
阅读权限100
在线时间 小时
这个控件关联了表内数据,清空的话,可以清空关联的数据,就是那几个颜色的字
阅读权限20
在线时间 小时
这个控件关联了表内数据,清空的话,可以清空关联的数据,就是那几个颜色的字
问题是我下次还需要用控件选择数据的,不是一次性的
阅读权限100
在线时间 小时
问题是我下次还需要用控件选择数据的,不是一次性的
选择数据区域的数据删除,控件区域列表就是空的了
下次选择,再选下次区域的
阅读权限100
在线时间 小时
(17.5 KB, 下载次数: 3)
09:18 上传
点击文件名下载附件
阅读权限20
在线时间 小时
就是这样,能说下是怎么操作的吗
阅读权限100
在线时间 小时
就是这样,能说下是怎么操作的吗
Private Sub Workbook_Open()
Sheet1.ComboBox1.Text = &&
最新热点 /2
买书正当时!京东ExcelHome畅销书每满100-50元,机会不容错过!
买书正当时!当当网ExcelHome畅销书每满200-100元,当当活动时间:即日起至6月2日,机会不容错过!
玩命加载中,请稍候
玩命加载中,请稍候
Powered by
本论坛言论纯属发表者个人意见,任何违反国家相关法律的言论,本站将协助国家相关部门追究发言者责任! & & 本站特聘法律顾问:徐怀玉律师 李志群律师

我要回帖

更多关于 vba空格代码 的文章

 

随机推荐