excel文件打开时 vba满足条件弹窗提醒?
AG列为公式获得的数值,AH列为“是”或“否”。当同一行的AG列>25,AH列为“否”时,弹出对话框,内容“请进行报备!”,需要确认消掉对话框,不需要确认效果。当同一行的...
AG列为公式获得的数值,AH列为“是”或“否”。当同一行的AG列>25,AH列为“否”时,弹出对话框,内容“请进行报备!”,需要确认消掉对话框,不需要确认效果。当同一行的AG列<=25,AH列为“是”或“否”,或者当同一行的AG列>25,AH列为“是”时,不做任何反应,不弹出对话框。文件打开的时候自动检查并弹窗提示。这样的情况如何通过VBA实现。
展开
4个回答
展开全部
注意工作表名的写法:
一、用工作表的大名写:
Private Sub Workbook_Open()
If Application.CountIfs(Sheet1.Columns("B"), ">25", Sheet1.Columns("C"), "否") Then MsgBox "请进行报备", 48
End Sub
二、用工作表的小名写:
Private Sub Workbook_Open()
If Application.CountIfs(Sheets("月报表").Columns("B"), ">25", Sheets("月报表").Columns("C"), "否") Then MsgBox "请进行报备", 48
End Sub
三、提示:注意上面的工作表名的两种写法。
用工作表的大名,好处是大名不会变化,比如后续更改了工作表名称,则不用改代码。
用工作表的小名,如果你后续更改了工作表名称,则需要同时修改原来写在代码里的工作表名称。
更多追问追答
追问
请再看一下,行号和列号变了,按截图里面的行号列号编代码就好。
追答
如果有多行符合 B格>25、C格为“否”,是不是只弹一次窗就行?
在文件打开时弹窗对吧。你先回答一下这个疑问,我晚上给你写。要吃饭了。
展开全部
本文将讲述如何在Excel中打开工作簿时弹出一个提示窗口。如何使用VBA宏在打开工作簿或Excel文件弹出一个消息框。
打开工作簿时显示提示窗口
如果要在打开特定工作簿时显示消息框,可以使用Excel VBA宏来实现结果。只需执行以下步骤:
步骤1:打开您的Excel工作簿,然后单击开发工具选项卡下的“Visual Basic”命令,或者只需按“ALT + F11”快捷方式。
步骤2:然后将出现“Visual Basic编辑器”窗口。
步骤3:双击VBAProject窗格下的ThisWorkbook对象,将会显示“ThisWorkbook”的代码窗口。
步骤4:将以下VBA宏代码复制并传递到代码窗口。
Private Sub Workbook_Open()
MsgBox "pop up message box"
End Sub
步骤5:单击“保存”按钮,将此工作簿保存为Excel启用宏的工作簿,需要从“保存类型”列表框中选择“Excel启用宏的工作簿”。
步骤6:重新打开该工作簿,您将在当前工作表的顶部看到安全警告消息。单击“启用内容”按钮以激活VBA宏。
步骤7:一个提示窗口将会弹出。
打开工作簿时显示提示窗口
如果要在打开特定工作簿时显示消息框,可以使用Excel VBA宏来实现结果。只需执行以下步骤:
步骤1:打开您的Excel工作簿,然后单击开发工具选项卡下的“Visual Basic”命令,或者只需按“ALT + F11”快捷方式。
步骤2:然后将出现“Visual Basic编辑器”窗口。
步骤3:双击VBAProject窗格下的ThisWorkbook对象,将会显示“ThisWorkbook”的代码窗口。
步骤4:将以下VBA宏代码复制并传递到代码窗口。
Private Sub Workbook_Open()
MsgBox "pop up message box"
End Sub
步骤5:单击“保存”按钮,将此工作簿保存为Excel启用宏的工作簿,需要从“保存类型”列表框中选择“Excel启用宏的工作簿”。
步骤6:重新打开该工作簿,您将在当前工作表的顶部看到安全警告消息。单击“启用内容”按钮以激活VBA宏。
步骤7:一个提示窗口将会弹出。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
如果仅仅是当到期日期距离当前日期还有15天打开excel表格时单元格变红提示即将到期,不必VBA,条件格式设置即可
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
使用VBA即可,代码如下:
Private Sub Workbook_Open()
Dim my_Range As Range
For Each my_Range In Worksheets(1).UsedRange
If my_Range.Column = 3 And my_Range = Date Then
MsgBox "到期了"
End If
Next
End Sub
Private Sub Workbook_Open()
Dim my_Range As Range
For Each my_Range In Worksheets(1).UsedRange
If my_Range.Column = 3 And my_Range = Date Then
MsgBox "到期了"
End If
Next
End Sub
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询
广告 您可能关注的内容 |