国产宅男网站在线|亚洲A级性爱免费视频|亚洲中精品级在线|午夜福利AA毛

  • <dd id="gf5jf"><th id="gf5jf"></th></dd>

    <cite id="gf5jf"><label id="gf5jf"></label></cite>
  • <div id="gf5jf"><listing id="gf5jf"></listing></div>
    學習啦 > 學習電腦 > 工具軟件 > 辦公軟件學習 > Excel教程 > Excel2013教程 > Excel表格VBA入門基礎語句有哪些

    Excel表格VBA入門基礎語句有哪些

    時間: 錦暉1117 分享

    Excel表格VBA入門基礎語句有哪些

      VBA同其他的編程語言一樣,都要對數據進行操作,VBA為用戶編程提供了方便。以下是學習啦小編為您帶來的關于VBA入門基礎語句詳解,希望對您有所幫助。

      Excel表格VBA入門基礎語句詳解

      選擇一個工作表:

      Sheets("Balance").Activate.

      選擇單元格:

      Range("A1").Select

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

      Range("A1:G8").Select

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

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

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

      選擇當前活動的工作簿:

      ThisWorkbook.Activate

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

      Windows("Totol.xls").Activate

      選擇一個工作表:

      Sheets("Balance").Activate.

      單元格間移動:

      ActiveCell.Offset(13, 14).Select

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

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

      注意:你可以定義一變量,并且用offset來實現,例如:

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

      ActiveCell.Offset(varFreightRowsCount, 0).Select

      選擇整個工作表:

      Cells.Select

      選擇當前單元格所在的區(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

      選擇當前活動單元格向下至最后一個非空單元格:

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

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

      選擇當前活動單元格向上至第一個非空單元格:

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

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

      選擇當前活動單元格向右至第一個非空單元格?

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

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

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

      選擇當前活動單元格向右至第10個單元格?

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

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

      選擇當前活動單元格向左至第10個單元格?

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

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

      選擇當前活動單元格向下至第10個單元格?

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

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

      選擇當前活動單元格向上至第10個單元格?

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

      選擇該行中第一個空單元格:

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

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

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

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

      移至當前列的第一個單元格:

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

      關于If..Then...EndIf

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

      If Selection.Value > 10 Then

      Selection.Offset(1, 0) = 100

      End If

      或者更簡單的:

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

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

      If Selection.Value > 10 Then

      If Selection.Value = 12 Then

      Selection.Offset(1, 0) = 100

      End If

      Selection.Offset(1, 0) = 20

      End If

      關于If..Then...And...EndIf

      當有雙重條件和一個動作時,你可以用下面的語句:

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

      Selection.Offset(1, 0) = 100

      End If

      關于If..Then...Or...EndIf

      當有雙重條件和一個動作時,你可以用下面的語句:

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

      Selection.Offset(1, 0) = 100

      End If

      關于If..Then...Else...EndIf

      當只有一個條件和兩個動作時,你可以用下面的語句:

      If Selection.Value > 10 Then

      Selection.Offset(1, 0) = 100

      Else

      Selection.Offset(1, 0) = 0

      End If

      關于If..Then..ElseIf...EndIf

      當有不止一個條件,且每個條件都跟隨不同的動作時,你可以用下面的語句:

      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

      關于Select Case

      當你不得不測試很多條件,你可以用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時,則其右邊那個單元格的值為“A”…… 所選單元格的值小于50時,其右邊那個單元格的值為“F”

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

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

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

      或者

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

      LCase

      當對輸入的字符做判斷時,我們無法知道用戶輸入的字符是大寫還是小寫,用LCase函數可以將其轉化為小寫:

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

      or

      Select Case LCase(Selection.Value)

      or

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

      NOW()

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

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

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

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

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

      UCase

      當對輸入的字符做判斷時,我們無法知道用戶輸入的字符是大寫還是小寫,用LCase函數可以將其轉化為大寫:

      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中進行編寫Vba函數的操作方法

    4.excel2007vba基本使用教程

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

    3738585