版權聲明:本文為博主原創文章,遵循 CC 4.0 BY-SA 版權協議,轉載請附上原文出處鏈接和本聲明。
本文鏈接:https://blog.csdn.net/wordsin/article/details/80575615
Excel之VBA簡單宏編程
excel是一款很經典的數據分析的工具,里面包含了很多內置函數,但實際情況有時卻復雜得多,而excel的宏編程提供了自定義函數的功能,正好有老師需要幫忙做一些數據分析,就學習了一下,下面是我的學習筆記。本人使用的是excel2013。有出入的地方可以參考。
文章目錄
Excel之VBA簡單宏編程
1、准備工作
2、VBA編程
2.1模塊聲明
2.2變量聲明及賦值
2.3if-else結構
2.4循環結構
2.5比較運算符
2.6注釋
3、常用功能
3.1獲取表格數據
3.2復制單元格且保留原單元格列寬
3.3設置單元格、某一行或某一列顏色
3.4獲取表格有用列數和有用行數
4、調試運行
1、准備工作
打開開發工具面板(excel的主選項卡默認是沒有開發工具選項卡的)
文件->選項->自定義功能區->
這時候主選項卡就有開發工具項了
進入vba編輯
點擊visual basic進入
在VBAProject上右鍵->插入->模塊
出現一個編輯文件如下圖
然后就可以在這里寫入vba代碼。
2、VBA編程
2.1模塊聲明
類似於一個程序,一個模塊要有一個主程序入口即模塊聲明,如
Sub sname() ··· ··· End Sub
2.2變量聲明及賦值
聲明格式為:
Dim ‘變量名稱’ As ‘變量類型’
如
Dim i As Integer Dim str As String
賦值格式為:
i = 3
str = “hello world!”
直接等號賦值
數據類型 定義符號 備注
字符串 String
整型數字 Integer -32768~32767
長整型數字 Long -2147483648~2147483647
單精度浮點型數字 Single 精度為6
雙精度浮點型數字 Double 精度為14
日期型 Date
布爾型 Boolean
變體型 Variant 萬用的類型,盡量避免使用
對象型 Object 沒有深究
枚舉型
枚舉類型數據定義格式:
Public|Private Enum 變量名
成員1[=常數表達式1]
成員1[=常數表達式1]
··· ···
End Enum
例如:
Public Enum WorkDays
星期日
星期一
星期二
星期三
星期四
星期五
星期六
End Enum
2.3if-else結構
If ······ Then
  ······
ElseIf ······ Then
  ······
Else
  ······
End If
1
2
3
4
5
6
7
2.4循環結構
Do While ······
  ······
Loop
For i = 0 To 100 Step 1
  ······
Next i
1
2
3
4
5
6
跳出for循環可以用 Exit For
2.5比較運算符
名稱 運算符
等於 =
不等於 <>
小於 <
小於等於 <=
大於 >
大於等於 >=
字符串匹配 Like
2.6注釋
VBA里的單行注釋以單引號'標識
3、常用功能
3.1獲取表格數據
獲取第i行j列單元格數據
Sheets(‘表格名’).Cells(i,j).Value
獲取第i行數據
Sheets('表格名').Rows(i)
獲取第j列
Sheets('表格名').Columns(j)
獲取一塊
Range("a1:b60")
3.2復制單元格且保留原單元格列寬
Sheets(name_1).Cells(i, k).copy
Sheets(name_result).Cells(i,k).PasteSpecial xlPasteColumnWidths
1
2
3.3設置單元格、某一行或某一列顏色
Sheets(name_1).Rows(i).Interior.ColorIndex = 3'
Sheets(name_1).Rows(i).Font.ColorIndex = 1
Sheets(name_1).Cells(i,j).Interior.ColorIndex = 3'
Sheets(name_1).Cells(i,j).Font.ColorIndex = 1
1
2
3
4
3.4獲取表格有用列數和有用行數
irows1 = Sheets(name_1).UsedRange.Rows.Count
icolumns1 = Sheets(name_1).UsedRange.Columns.Count
1
2
4、調試運行
快捷鍵 功能
F8 逐語句運行
Shift+F8 逐過程運行
Ctrl+F8 運行到光標處
F9 光標處添加斷點
調試->添加監視 添加監視
————————————————
版權聲明:本文為CSDN博主「ziv404」的原創文章,遵循 CC 4.0 BY-SA 版權協議,轉載請附上原文出處鏈接及本聲明。
原文鏈接:https://blog.csdn.net/wordsin/article/details/80575615