求VBA语言,打开excel自动弹一个对话框选择是否

求VBA语言,打开excel自动弹一个对话框选择是否,第1张

在 ThisWorkbook 的 Open 事件,写入:

Private Sub Workbook_Open()

hh = MsgBox("是否打开此表?", vbOKCancel)

If hh = vbCancel Then ApplicationQuit

End Sub

 for i=2 to [b65536]end(3)row

   if cells(i,"B")<500 then

     If MsgBox("是否要继续", vbOKCancel, "温馨提示") = vbOK Then

    '这里放继续  的代码

     Else

    exit sub

    End If

  end if

 next

将以下代码放入所需要的工作表VB代码中:Private Sub Worksheet_SelectionChange(ByVal Target As Range)

Dim A1 As Long

Dim B1 As Long

Dim Rsp As String

'定义A1、B1的取值代码,省略

A1 = Range("A1") '假设A1内容,实际当中自行编写

B1 = Range("B1") '假设B1内容,实际当中自行编写

If A1 > B1 Then

Rsp = MsgBox("A1已大于A2,请确定继续", vbYesNo)

If Rsp = vbNo Then

ThisWorkbookClose

End If

End If

End Sub实际输入上述代码,可采用vba编辑器,选择对应的工作表,再选择相应事件SelectionChange,复制输入上述代码。

Private Sub Command1_Click()

un = InputBox("请输入 用户名")

If un = "张三" Then

' VBA接受张三并进行下一步处理

End If

End Sub

Private Sub Form_Load()

Command1Caption = "登陆"

End Sub

这个简单抄:

在模块里建宏代码显示提示框。如:

Sub box()

MsgBox ("提示内容……")

End Sub

在另外的代码中定时调用宏box(假设定时时间在sheet1表的A1单元格)。如在打开文件时运行:

Private Sub Workbook_Open()

ApplicationOnTime TimeValue(Sheet1Range("A1")Text), "Box"

End Sub

关键是这个OnTime方法,你可自由发挥,达到多次定时提醒,定时循环提醒等。

通过applicationdisplayalerts属性来强制屏蔽信息框,之后就可以自动选择确定了。

Excel现在是被应用到我们生活中的方方面面,也经常和它打交道,Excel基本是用来处理表单数据的,里面自带一些工具和函数,工具和函数运用的熟练可以让Excel变得比较高效,也让自己的工作轻松一些。面对很多繁杂的数据的时候,处理数据就会变得比较麻烦,VBA可以解决这个问题,VBA是Visual Basic for

Applications的缩写,是内嵌于office软件中的一个开发模块,这个模块提供程序自主开发,语言基础和VB(Visual

Basic)相似。在Excel的“工具—宏—编辑器”可以打开,也可按Alt+F11打开,它处理数据既高效也比较自如。

VBA其实不是那么的难,即使没有VB基础的也可以学得会的哦!

VBA在以后的办公作业中的运用会日益凸显的!

查找对话框对应于,rangefind方法。

workbooks(1)find'这个就是查找工作簿,表也类似。

RangeFind 

方法    

区域中查找特定信息。语法

表达式Find(What, 

After, LookIn, LookAt, SearchOrder, 

SearchDirection, MatchCase, MatchByte, 

SearchFormat)

表达式   一个代表 Range 对象的变量。

参数

名称必选/可选数据类型说明

What    必选    Variant    要搜索的数据。可为字符串或任意 Microsoft Excel 数据类型。    

After    可选    Variant    表示搜索过程将从其之后开始进行的单元格。此单元格对应于从用户界面搜索时的活动单元格的位置。请注意:After 必须是区域中的单个单元格。要记住搜索是从该单元格之后开始的;直到此方法绕回到此单元格时,才对其进行搜索。如果不指定该参数,搜索将从区域的左上角的单元格之后开始。    

LookIn    可选    Variant    信息类型。    

LookAt    可选    Variant    可为以下 XlLookAt 常量之一:xlWhole 或 

xlPart。    

SearchOrder    可选    Variant    可为以下 XlSearchOrder 常量之一:xlByRows 或 

xlByColumns。    

SearchDirection    可选    XlSearchDirection    搜索的方向。    

MatchCase    可选    Variant    如果为 True,则搜索区分大小写。默认值为 False。    

MatchByte    可选    Variant    只在已经选择或安装了双字节语言支持时适用。如果为 True,则双字节字符只与双字节字符匹配。如果为 

False,则双字节字符可与其对等的单字节字符匹配。    

SearchFormat    可选    Variant    搜索的格式。    

返回值

一个 Range 对象,它代表第一个在其中找到该信息的单元格。

说明

如果未发现匹配项,则返回 Nothing。Find 方法不影响选定区域或当前活动的单元格。

每次使用此方法后,参数 LookIn、LookAt、SearchOrder 和 MatchByte 的设置都将被保存。如果下次调用此方法时不指定这些参数的值,就使用保存的值。设置这些参数将更改“查找”对话框中的设置,如果省略这些参数,更改“查找”对话框中的设置将更改使用的保存值。要避免出现这一问题,每次使用此方法时请明确设置这些参数。

使用 FindNext 和 FindPrevious 方法可重复搜索。

当搜索到指定查找区域的末尾时,此方法将绕回到区域的开始位置继续搜索。发生绕回后,要停止搜索,可保存第一个找到的单元格地址,然后测试后面找到的每个单元格地址是否与其相同。

若要对单元格进行模式更为复杂的搜索,请结合使用 For EachNext 语句和 Like 运算符。例如,下列代码在单元格区域 A1:C5 中搜索字体名称以“Cour”开始的单元格。当 Microsoft Excel 找到匹配单元格以后,就将其字体改为 

Times New Roman。

For Each c In [A1:C5] If cFontName Like "Cour" Then cFontName = 

"Times New Roman" End If Next

示例

本示例在第一个工作表的单元格区域 A1:A500 中查找包含值 2 的所有单元格,并将这些单元格的值更改为 5。

Visual Basic for Applications

With Worksheets(1)Range("a1:a500")

    Set c = Find(2, lookin:=xlValues)

    If Not c Is Nothing Then

        firstAddress = cAddress

        Do

            cValue = 5

            Set c = FindNext(c)

        Loop While Not c Is Nothing And cAddress <> firstAddress

    End If

End With

欢迎分享,转载请注明来源:表白网

原文地址:https://h5.hunlipic.com/biaobai/2689945.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2024-01-05
下一篇2024-01-05

发表评论

登录后才能评论

评论列表(0条)

    保存