欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

Excel VBA

程序员文章站 2022-05-14 22:56:30
...

由于工作需要,需要从头开始学习Excel表格。以前并没有认识到Excel表格的丰富功能直到工作后,接触到别人(BA)写的 Excel,看了一下还不错。所以在这里整理一下我查找的资料。


Excel VBA : At the begining for VBA (Good) 

https://www.excel-easy.com/vba.html

API 

VBA 与 VB 区别与联系

VBA(Visual Basic for Applications) VB (Visual Basic)

1. VB是设计用于创建标准的应用程序,而VBA是使已有的应用程序(EXCEL等)自动化
           2. VB具有自己的开发环境,而VBA必须寄生于已有的应用程序.
           3. 要运行VB开发的应用程序,用户不必安装VB,因为VB开发出的应用程序是可执行文件(*.EXE),而VBA开发的程序必须依                   赖于它的父应用程序,例如EXCEL.
           4.VBA是VB的一个子集。


Excel中表单控件和ACTIVEX控件主要区别

一个主要区别就是表单控件可以和单元格关联,操作控件可以修改单元格的值(不用编程),所以用于工作表,而           ACTIVEX控件虽然属性强大,可控性强,但不能和单元格关联,所以用于表单Form。


Excel 函数列表

1. VLOOKUP函数(使用率很高,类似 SQL外键查询。)

=VLOOKUP(lookup_value,table_array,col_index_num,range_lookup)    =VLOOKUP(F:F,Sheet2!A:I,4,0)

a.外键区域 b.外键在另一个sheet页的区域 c. 外键列的位置 d. 是否是精确查询 0,1

VLOOKUP 多条件查询

2. Text()


app.

shortcut key F1 help

MsgBox "Entered value is " & Range("A1").Value  & join the string 

Highlight Active Cell

 

Private Sub Worksheet_SelectionChange(ByVal Target As Range)

Dim rowNumberValue As Integer, columnNumberValue As Integer, i As Integer, j As Integer

Cells.Interior.ColorIndex = 0

rowNumberValue = ActiveCell.row
columnNumberValue = ActiveCell.column

For i = 1 To rowNumberValue
    Cells(i, columnNumberValue).Interior.ColorIndex = 37
Next i

For j = 1 To columnNumberValue
    Cells(rowNumberValue, j).Interior.ColorIndex = 37
Next j

End Sub

Range Object

Private Sub CommandButton1_Click()

Dim rng As Range, cell As Range

Set rng = Range("C4:D10")
Set cell = Selection//鼠标手动选择的区域

If cell.Count = 1 And IsNumeric(cell) And Not IsEmpty(cell) And Not Intersect(rng, cell) Is Nothing Then
    MsgBox "You win"
Else
    MsgBox "You lose"
End If

End Sub

Sort Numbers

Dim i As Integer, j As Integer, temp As Integer, rng As Range

Set rng = Range(""A1"").CurrentRegion
For i = 1 To rng.Count
    For j = i + 1 To rng.Count
If rng.Cells(j) < rng.Cells(i) Then
'swap numbers
temp = rng.Cells(i)
rng.Cells(i) = rng.Cells(j)
rng.Cells(j) = temp
Next j
Next i
End If

VBA学习路线图


Thanks for above blog author. 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

+

相关标签: Excel