生活随笔
收集整理的這篇文章主要介紹了
【Excel】二、VBA入门指导
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
一、PERSONAL.XLSB
如果需要經常在不同的工作薄里使用相同的一些宏功能代碼,建議配置一個打開Excel軟件后總是會默認打開的PERSONAL.XLSB文件。
PERSONAL.XLSB默認不可見,可以通過「視圖」里的功能來"取消隱藏"或重新"隱藏"工作薄。
xlsb是一種比較節省體積的保存格式:推薦使用xlsb格式保存Excel文件。Excel使用VBA小程序的方法。
二、VBE相關配置
在Excel中,按下「Alt+F11」打開的界面就叫VBE(Visual Basic Editor),這里介紹一些VBE的配置及使用方法,提高以后編寫代碼的效率。關閉“自動語法檢測”
在VBA中切換代碼行時,默認會進行語法檢測。有時未完成該行,鼠標選擇其它行的內容進行復制,則會彈出警告窗口,影響編輯效率??梢酝ㄟ^「工具–>選項」設置關閉自動檢測:
打開「視圖->工具欄–>編輯」,方便批量注釋、取消注釋代碼塊。
「工具–>引用」,可以添加很多現有的功能庫,如我用過的
名稱內容
| Microsoft Scripting Runtime | 字典Dictionary類 |
| Microsoft VBScript Regular Expressions | 正則表達式 |
| Microsoft XML,v3.0 | XML文檔分析 |
vba代碼格式化插件: http://www.cnblogs.com/Charltsing/p/SmartIndenter64.html
三、定義變量
簡表
數據類型類型聲明字符
| Integer | % |
| Long | & |
| Single | ! |
| Double | # |
| String | $ |
為了代碼精短,我會習慣性的使用類型聲明字符,但又為了代碼可讀性,同類型的最后一個變量,會保留as的顯式類型定義,如Dim i&, j&, k As Long。
更多示例代碼
Sub 變量定義方法示例
()
'
1 顯示定義后再使用
Const 常量整數
1 As Integer = 9Const 常量整數
2 = 7Const 日期
= #
1/11/1982# '定義日期
1982年
1月
11日'
2 未定義直接使用一個字符串
= "Yang" '變量可以直接使用一個字符串
= 13 '并且可以隨時改變數據類型'
3 Dim'
Dim可以定義變量,方法同上'
Dim還可以定義對象
Dim 對象
1 As Object
Dim 字典
As Dictionary'
4 綜合介紹'Interge是
16位無符號整型
,long是
32位無符號整型
Dim 定義整數
As IntegerDim 整數的另一種定義方法%
Dim long的特殊定義方法
&'
Single是單精度浮點型,
double是雙精度浮點型
Dim Single的特殊定義方法
Dim Double的特殊定義方法# '
64位' 其他類型
Dim Currency貨幣型#
Dim 布爾值
As Boolean' 注意字節型
,不是字符型
Dim 字節型
As Byte '
0~
255,在進行ANSI和UTF讀取時
,用
string可能會破壞原值' 時間類型
Dim Tdate
As DateTdate
= #
11/15/2005# '寫#
2005-11-15#
,#November
15,2005#時會自動變為#
11/15/2005#Tdate
= #
11/15/2005 1:00:00 PM#
Dim 字符串
As String '在VBA中
,字符和字符串沒有區別字符串
= "Hello"字符串
= "a"
End Sub
四、基本語法結構
判斷,字符串處理
If InStr
(s
, "★"
) > 0 Then星星數
= Len(s
) - Len(Replace
(s
, "★
", ""
))
ElseIf InStr
(s
, "難度:"
) > 0 Thenn
= Mid(s
, InStr
(s
, "難度:"
) + 3, 1)If CStr
(星星數
) <> n
Thenp.
Selectp.HighlightColorIndex
= wdYellow
Exit SubEnd If
End If
For循環
For i
= 1 To lentht
= toInt
(Mid(s
, i
, 1))If t
= -1 ThentoBase10Value
= CVErr
(xlErrNA
)Exit FunctionElsetoBase10Value
= toBase10Value
* oriBase
+ t
End If
Next i
While循環
Do While d
<> 0r
= d
Mod dstBasetoBaseNValue
= toChar
(r
) + toBaseNValued
= Int(d
/ dstBase
) '截去小數向下取整
Loop
總結
以上是生活随笔為你收集整理的【Excel】二、VBA入门指导的全部內容,希望文章能夠幫你解決所遇到的問題。
如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。