Private Sub Worksheet_SelectionChange(ByVal Target As Range)
'The note of Visual Basic for Application
'VBA 是由微软开发出来的一种宏语言,寄于对Windows桌面程序功能的扩展,和VB语言结构相似,是VB的子集;
'VBA常见的作用:
'1.规范用户的操作,控制用户的操作行为;
'2.操作界面人性化,方便用户的操作;
'3.多个步骤的手工操作通过执行VBA代码可以迅速的实现;
'4.实现一些VB无法实现的功能;
'5.用VBA制做EXCEL登录系统;
'6.利用VBA可以Excel内轻松开发出功能强大的自动化程序.
'VBA中常见的数据类型:
'1. Integer 整型 %
'2. Single 单精度 !
'3. Double 双精度 #
'4. String 字符串 $
'5. Long 长整型 &
'6. Currency 货币型 @ 'VBA判断语句:
'(1)IF判断语句:
'单行判断语句:不需要使用End If
Dim a As Integer
a =
If a > Then MsgBox "大于3" '多行判断语句:需要使用End If
If a > Then
MsgBox "大于2"
ElseIf a > Then
MsgBox "大于5"
Else
MsgBox "feirup"
End If
'(2)IIF判断语句:
MsgBox IIf(a > , "不错", "一般") '选择语句:
'Select Case语句:
Dim i As Integer
i =
Select Case i
Case Is >
MsgBox "正数"
Case Is <
MsgBox "负数"
Case Else
MsgBox ""
End Select
'循环语句:
'DO...LOOP语句:
Dim t As Integer
t =
Do
t = t +
If t > Then MsgBox "大于10了"
Loop 'While语句:
Dim rs%
rs = Do While Cells(rs, ) <> ""
Cells(rs, ) = "非若"
rs = rs +
Loop
'Until循环语句:
Dim t%
t =
Do Until Cells(t, ) = ""
Cells(t, ) = "feiruo"
t = t +
Loop
'for each...next语句: Dim rng As Range, n!
For Each rng In Sheet1.Range("a1:a10")
If rng = "A3" Then
rng.Interior.ColorIndex =
Else
rng.Interior.ColorIndex =
End If
Next
'for...next语句:
Dim i!, j!
For i = To Step
j = j +
Next i
MsgBox "j=" & j 'End与Exit语句:
'1. Exit Do
'2.Exit For
'3.Exit Function
'4.Exit Sub
Dim r!
For r = To
If Sheet1.Cells(r, ) = "非若" Then
Exit For
End If
Next r
MsgBox "非若(第一个)在第" & r & "行!" Sub button() '1.End
'2.End Function
'3.End If
'4.End Select
'5.End Sub
Dim i!
i =
MsgBox "i=" & i
End '直接停止程序
MsgBox "退出le"
End Sub '跳转语句:
'GoTo line无条件转移程序中指定的程序行
Dim str$, k!
k =
line:
k = k +
If k > Then Exit Sub
str = InputBox("请输入用户名!")
If str <> "admin" Then GoTo line
'错误分支语句:
Dim i!
'On Error Resume Next '当遇到错误的时候继续执行下去
On Error GoTo ERROR: For i = To
Cells(i, ) = Cells(i, ) + Cells(i4)
Next i
MsgBox "运行完毕" ERROR: MsgBox "遇到错误!" 'width语句:对某个对象执行一系列的语句是,不用重复指出对象的名称
'a = Range("a1").Address
'b = Range("a1").Parent.Name
With Range("a1")
a = .Address
b = .Parent.Name
MsgBox a '$A$1
MsgBox b 'Sheet1
End With End Sub
'VBA 函数:
Dim i% For i = To Step
Sheet1.Cells(i, ) = "=sum(a" & i & ":b" & i & ")"
Sheet1.Cells(i, ) = "=COUNTIF(A1:A11,"">12"")"
Sheet1.Cells(i, ) = "=sum(INDIRECT(""a1:a10""))"
Next i Dim i% MsgBox Application.WorksheetFunction.CountIf(Range("a1:a10"), ) '3 统计3的14的个数 等价于: 'MsgBox Application.CountIf(Range("a1:a10"), 14) 'MsgBox WorksheetFunction.CountIf(Range("a1:a10"), 14) MsgBox VBA.Format(Range("b1"), "0.00") MsgBox Format(Range("b1"), "0.00") '自定义函数:
Function sex(rng As Range)
MsgBox sex = IIf(Mid(rng, , ) Mod , "男", "女")
End Function

-------非若------

2015.09.24

Visual Basic for Application的更多相关文章

  1. 用EXCEL内嵌的Visual Basic for Application 编程,通过 UGSimple USB-GPIB 控制器来驱动仪器34401A,并从34401A读取数据

    现在市场上有很多中USB-GPIB 控制器,或叫 USB 转GPIB链接线. 每种GPIB控制器都有它的 函数库(dll库).各种GPIB 控制器的价钱插别很大.这里以一种价钱较便宜的USB-GPIB ...

  2. Visual Basic了解

    Visual Basic是一种由微软公司开发的结构化的.模块化的.面向对象的.包含协助开发环境的事件驱动为机制的可视化程序设计语言.这是一种可用于微软自家产品开发的语言.它源自于Basic编程语言.V ...

  3. 杂项-软件: VBA(Visual Basic for Applications)

    ylbtech-杂项-软件: VBA(Visual Basic for Applications) VBA (Visual Basic宏语言) Visual Basic for Application ...

  4. Visual Basic 2012 借助DataGridView控件将SQL server2012 数据导入到Excel 2010

    摘  要: SQL Server 2012 数据和Excel 2010之间的连接和数据的传输,本篇文章主要针对的是SQL Server 2012 数据导入到Excel 2010文件中.Excel软件对 ...

  5. Visual Basic 2012 借助DataGridView控件将Excel 2010数据导入到SQL server 2012

    (注:注释的颜色原本为绿色,在这里变为黑色,有点不便,但不会造成阅读影响.放入Visual Basic2012代码编辑器后会还原成绿色.) 摘  要:DataGridView控件作为数据传输的中介,只 ...

  6. Visual Basic 2017 操作Excel和word【1】持续更新……

    我坚持在VB的路上走到黑…………  清单1.1  从应用程序对象导航到Excel中的工作表  Dim myWorkbooks As Excel.Workbooks = app.Workbooks ) ...

  7. Visual Basic 函数速查

    Calendar 常数 可在代码中的任何地方用下列常数代替实际值: 常数 值 描述 vbCalGreg 0 指出使用的是阳历. vbCalHijri 1 指出使用的是伊斯兰历法. Color 常数 可 ...

  8. 使用 Async 和 Await 的异步编程(C# 和 Visual Basic)[msdn.microsoft.com]

    看到Microsoft官方一篇关于异步编程的文章,感觉挺好,不敢独享,分享给大家. 原文地址:https://msdn.microsoft.com/zh-cn/library/hh191443.asp ...

  9. Delphi、C C++、Visual Basic数据类型的对照 转

    Delphi.C C++.Visual  Basic数据类型的对照 变量类型 Delphi C/C++ Visual Basic 位有符号整数 ShortInt char -- 位无符号整数 Byte ...

随机推荐

  1. Redis 原子操作INCR

    The content below come from http://try.redis.io/ There is something special about INCR. Why do we pr ...

  2. Linux 实用指令(4)

    目录 实用指令 1.指定运行级别 2.切换到指定运行级别的指令 3.帮助指令 3.1man获得帮助信息 3.2help指令 4.文件目录类 4.1pwd指令 4.2 ls指令 4.3 cd指令 4.4 ...

  3. 【hdu 2036】改革春风吹满地

    [题目链接]:http://acm.hdu.edu.cn/showproblem.php?pid=2036 [题意] 中文题 [题解] 这里用的是叉积对应的求三角形的面积; 即 A×B=A*B*sin ...

  4. 超经典SQL练习题,做完这些你的SQL就过关了

    使用方法:我用的数据库是 Ms SQL Server 2008 ,练习时应当自己建数据,自己先思考,切勿急躁翻答案!否则效果减半,做完这些,恭喜你,你的 SQL 就算过关了. 测试表格 --1.学生表 ...

  5. 导出excel - 自用

    export function handerFillZero(num){ return num>=10 ? num : '0'+num; } export function exportExce ...

  6. Solr插件的弊端

    在前文<Solr Update插件自定义条件索引>中,我介绍了如何通过插件的模式,自定义Solr的Update过程.但是在大半年的使用过程中,发现这种方式存在如下弊端. 1.环境难以维护. ...

  7. GPS时间系统概述和世界时系统

    6.1  GPS时间系统概述 时间包含"时刻"和"时间间隔"2个概念.所谓时刻,即发生某一现象的瞬间.在天文学和卫星定位中.与所获数据对应的时刻也称为历元.时间 ...

  8. 正则表达式,字符串中需要两个反斜杠“\\d”

    这个正则表达式为什么会有两个反斜杠? "^.*?\\.(jpg|png|bmp|gif)$"上面这个正则表达式为什么有两个反斜杠呢?反斜杠点\.就能表示点.了,为什么还要在\.前面 ...

  9. js+jquery动态设置/添加/删除/获取元素属性的两种方法集锦对照(动态onclick属性设置+动态title设置)

    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html140 ...

  10. javascript 获取当前对象

    <a href="dsfjlsdjf" onclick="testGet()"> 请教编写testGet()函数获取这个超链接href属性,限制例如 ...