亚洲欧美精品沙发,日韩在线精品视频,亚洲Av每日更新在线观看,亚洲国产另类一区在线5

<pre id="hdphd"></pre>

  • <div id="hdphd"><small id="hdphd"></small></div>
      學(xué)習(xí)啦 > 學(xué)習(xí)電腦 > 工具軟件 > 辦公軟件學(xué)習(xí) > Excel教程 > Excel2013教程 > Excel表格VBA入門基礎(chǔ)語句有哪些

      Excel表格VBA入門基礎(chǔ)語句有哪些

      時(shí)間: 錦暉1117 分享

      Excel表格VBA入門基礎(chǔ)語句有哪些

        VBA同其他的編程語言一樣,都要對數(shù)據(jù)進(jìn)行操作,VBA為用戶編程提供了方便。以下是學(xué)習(xí)啦小編為您帶來的關(guān)于VBA入門基礎(chǔ)語句詳解,希望對您有所幫助。

        Excel表格VBA入門基礎(chǔ)語句詳解

        選擇一個(gè)工作表:

        Sheets("Balance").Activate.

        選擇單元格:

        Range("A1").Select

        選擇連續(xù)的單元格:

        Range("A1:G8").Select

        選擇不連續(xù)的單元格:

        Range("A1,B6,D9").Select

        Range("A1,B6:B10,D9").Select

        選擇當(dāng)前活動的工作簿:

        ThisWorkbook.Activate

        如果選擇其他工作簿,注意該工作簿一定是打開的,并且不要忘記加上后綴“.xls” ,例如:

        Windows("Totol.xls").Activate

        選擇一個(gè)工作表:

        Sheets("Balance").Activate.

        單元格間移動:

        ActiveCell.Offset(13, 14).Select

        Selection.Offset(-3, -4).Select

        Range("G8").Offset(-3, -4).Select

        注意:你可以定義一變量,并且用offset來實(shí)現(xiàn),例如:

        varFreightRowsCount = Range("A1").CurrentRegion.Rows.Count

        ActiveCell.Offset(varFreightRowsCount, 0).Select

        選擇整個(gè)工作表:

        Cells.Select

        選擇當(dāng)前單元格所在的區(qū)域 (遇到空行 / 空列即止):

        Range("A1").CurrentRegion.Select

        選擇行或列:

        Rows("1").Select

        Columns("A").Select

        或者:

        ActiveCell.EntireRow.Select

        ActiveCell.EntireColumn.Select

        選擇相鄰的多行/多列:

        Columns("A:C").Select

        Rows("1:5").Select

        選擇不相鄰的多行/多列:

        注意:和選擇相鄰的多行/多列不同,使用"Range"而不是"Columns/Rows":

        Range("A:A, C:C, E:F").Select

        Range("1:1,5:6,9:9").Select

        選擇當(dāng)前活動單元格向下至最后一個(gè)非空單元格:

        Range("A1", Range("A1").End(xlDown)).Select

        Range(ActiveCell, ActiveCell.End(xlDown)).Select

        選擇當(dāng)前活動單元格向上至第一個(gè)非空單元格:

        Range("A32", Range("A32").End(xlUp)).Select

        Range(ActiveCell, ActiveCell.End(xlUp)).Select

        選擇當(dāng)前活動單元格向右至第一個(gè)非空單元格?

        注意:是 "xlTORight"而不是 "xlRight"

        Range("A1", Range("A1").End(xlToRight)).Select

        Range(ActiveCell, ActiveCell.End(xlToLeft)).Select

        選擇當(dāng)前活動單元格向右至第10個(gè)單元格?

        Range("A2", Range("A2").Offset(0, 10)).Select

        Range(ActiveCell, ActiveCell.Offset(0, 10)).Select

        選擇當(dāng)前活動單元格向左至第10個(gè)單元格?

        Range("A20", Range("A20").Offset(0, -10)).Select

        Range(ActiveCell, ActiveCell.Offset(0, -10)).Select

        選擇當(dāng)前活動單元格向下至第10個(gè)單元格?

        Range("a2", Range("a2").Offset(10, 0)).Select

        Range(ActiveCell, ActiveCell.Offset(10, 0)).Select

        選擇當(dāng)前活動單元格向上至第10個(gè)單元格?

        Range("A1").End(xlDown).Offset(1, 0).Select

        選擇該行中第一個(gè)空單元格:

        Range("A1").End(xlToRight).Offset(0, 1).Select

        改變區(qū)域的大小(由 A1:B5 變?yōu)?A1:D10):注意:改區(qū)域并不是向外擴(kuò)張,而是重新定義了。即“Selection.Resize(10, 4).Select而不是Selection.Resize(5, 2).Select

        Excel的宏不能記錄移至當(dāng)前行的第一個(gè)單元格的動作(即你按下“Home”鍵的動作),下面的語句則可以做到:

        ActiveCell.Offset(0, -ActiveCell.Column + 1).Select

        移至當(dāng)前列的第一個(gè)單元格:

        ActiveCell.Offset(-ActiveCell.Row + 1, 0).Select

        關(guān)于If..Then...EndIf

        如果只有一個(gè)條件及一個(gè)動作,你可以用以下語句:

        If Selection.Value > 10 Then

        Selection.Offset(1, 0) = 100

        End If

        或者更簡單的:

        If Selection.Value > 10 Then Selection.Offset(1, 0) = 100

        如果有兩個(gè)條件及兩個(gè)動作,你可以用下面的語句

        If Selection.Value > 10 Then

        If Selection.Value = 12 Then

        Selection.Offset(1, 0) = 100

        End If

        Selection.Offset(1, 0) = 20

        End If

        關(guān)于If..Then...And...EndIf

        當(dāng)有雙重條件和一個(gè)動作時(shí),你可以用下面的語句:

        If Selection.Value = 10 And Selection.Offset(0, 1).Value = 20 Then

        Selection.Offset(1, 0) = 100

        End If

        關(guān)于If..Then...Or...EndIf

        當(dāng)有雙重條件和一個(gè)動作時(shí),你可以用下面的語句:

        If Selection.Value = 10 Or Selection.Offset(0, 1).Value = 20 Then

        Selection.Offset(1, 0) = 100

        End If

        關(guān)于If..Then...Else...EndIf

        當(dāng)只有一個(gè)條件和兩個(gè)動作時(shí),你可以用下面的語句:

        If Selection.Value > 10 Then

        Selection.Offset(1, 0) = 100

        Else

        Selection.Offset(1, 0) = 0

        End If

        關(guān)于If..Then..ElseIf...EndIf

        當(dāng)有不止一個(gè)條件,且每個(gè)條件都跟隨不同的動作時(shí),你可以用下面的語句:

        If Selection.Value = 1 Then

        Selection.Offset(1, 0) = 10

        ElseIf Selection.Value = 2 Then

        Selection.Offset(1, 0) = 20

        ElseIf Selection.Value = 3 Then

        Selection.Offset(1, 0) = 30

        ElseIf Selection.Value = 4 Then

        Selection.Offset(1, 0) = 40

        ElseIf Selection.Value = 5 Then

        Selection.Offset(1, 0) = 50

        End If

        關(guān)于Select Case

        當(dāng)你不得不測試很多條件,你可以用Select Case 語句來代替If Then..ElseIf 。語法如下:

        Sub test()

        Select Case Selection.Value

        Case Is >= 85

        Selection.Offset(0, 1) = "A"

        Case Is >= 75

        Selection.Offset(0, 1) = "B"

        Case Is >= 65

        Selection.Offset(0, 1) = "C"

        Case Is >= 50

        Selection.Offset(0, 1) = "D"

        Case Else

        Selection.Offset(0, 1) = "F"

        End Select

        End Sub

        這段語句的意思就是:如果所選單元格的值大于85時(shí),則其右邊那個(gè)單元格的值為“A”…… 所選單元格的值小于50時(shí),其右邊那個(gè)單元格的值為“F”

        這里有一些關(guān)于VBA函數(shù) LCase, Now(), UCase 的例子:

        注意: 很多EXCEL函數(shù)都可以以下面的形式用在VBA中:

        varAnswer = Application.WorksheetFunction.Sum(Range("A1:A32"))

        或者

        varAnswer = Application.Sum(Range("A1:A32"))

        LCase

        當(dāng)對輸入的字符做判斷時(shí),我們無法知道用戶輸入的字符是大寫還是小寫,用LCase函數(shù)可以將其轉(zhuǎn)化為小寫:

        If LCase(Selection.value)= "toto" then...

        or

        Select Case LCase(Selection.Value)

        or

        Do While LCase(Selection.Value) <> "toto"

        NOW()

        NOW() 既是Excel 函數(shù)也是VBA 函數(shù)。

        通過下面的語句,在打開工作簿時(shí),單元格 "A1"就會顯示為當(dāng)前時(shí)間:

        Range("A1").Formula = "=Now()"

        下面的語句則在執(zhí)行后賦予單元格“A1”當(dāng)前時(shí)間,該時(shí)間不會改變除非你再次執(zhí)行語句。并且你每次打開工作簿后,單元格“A1”的值不會改變。

        Range("A1").Value = Now()

        UCase

        當(dāng)對輸入的字符做判斷時(shí),我們無法知道用戶輸入的字符是大寫還是小寫,用LCase函數(shù)可以將其轉(zhuǎn)化為大寫:

        If UCase(Selection.value)= "TOTO" then...

        or

        Select Case UCase(Selection.Value)

        or

        Do While UCase(Selection.Value) <> "TOTO"

      猜你喜歡:

      1.excel中使用vba功能的方法

      2.excel中使用vba的方法

      3.Excel中進(jìn)行編寫Vba函數(shù)的操作方法

      4.excel2007vba基本使用教程

      5.Excel2007中創(chuàng)建并使用VBA代碼的操作

      3738585