小男孩‘自慰网亚洲一区二区,亚洲一级在线播放毛片,亚洲中文字幕av每天更新,黄aⅴ永久免费无码,91成人午夜在线精品,色网站免费在线观看,亚洲欧洲wwwww在线观看

分享

Excel中VBA編程學(xué)習(xí)筆記(十)

 hdzgx 2019-11-24

1、單元格引用

引用

含義

Range(“A1”)

單元格A1

Range(“A1:B2”)

A1到B2的單元格區(qū)域

Range(“C5:D9,G9:H16”)

多塊選定區(qū)域

·Range(“A:A”)

A列

Range(“1:1”)

第1行

Range(“A:C”)

從A列到C列的區(qū)域

Range(“1:5”)

從第1行到第5行的區(qū)域

Range(“1:1,3:3,5:5”)

第1,3,5行

 

2、行列引用

引用

含義

Rows(1)

第1行

Rows

工作表上的所有行

Columns(1)

第1列

Columns(“A”)

第1列

Columns

工作表上的所有列

3、活動(dòng)單元格

Sub test()

    Debug.Print ActiveCell.Address  '活動(dòng)單元格地址

    [F3].Activate   '激活指定活動(dòng)單元格

   

    For index = 1 To Selection.Count    '依次激活選中區(qū)域的每個(gè)單元格

        Selection(index).Activate

    Next

   

    Selection = 1 '設(shè)置選中單元格的值

End Sub

 

4、設(shè)置單元格對齊

Range.HorizontalAlignment屬性設(shè)置單元格的水平對齊方式,取值如下:

名稱

含義

xlCenter

水平居中

xlDistributed

分散對齊

xlJustify

兩端對齊

xkLeft

左對齊

xlRight

右對齊

例:

Worksheets(1).Range("A:B").HorizontalAlignment = xlCenter

 

Range.VerticalAlignment設(shè)置垂直對齊方式,取值如下:

名稱

含義

xlCenter

居中對齊

xlBottom

底端對齊

xlDistributed

分散對齊

xlJustify

兩端對齊

xlTop

頂端對齊

例:

Worksheets(1).Range("A:B").VerticalAlignment = xlTop

 

Range.AddIndent屬性指明當(dāng)前單元格中文本的對齊方式為水平或垂直等距分布時(shí),文本是否自動(dòng)縮進(jìn),設(shè)置為true則會(huì)自動(dòng)縮進(jìn).

 

5、單元格格式

Range.NumberFormat屬性設(shè)置單元格數(shù)字格式.

例:

Worksheets(1).Columns(1).NumberFormat = "YYYY:MM:DD"

Worksheets(1).Columns(1).NumberFormat = "general"

 

Sub test()

   Debug.Print [a1].NumberFormatLocal   '獲取a1單元格格式

   [a1] = "1993/12/25"

   [a:a].NumberFormatLocal = "yyyy年MM月dd日 hh時(shí)mm分ss秒"  '設(shè)置單元格格式

End Sub

Worksheets(1).Columns(Range("BD1").Column).WrapText = True     ‘設(shè)置自動(dòng)換行

Rem 保留兩位小數(shù),并且每三位使用逗號隔開

Workbooks(wbName).Sheets("Sheet1").Columns("J").NumberFormat = "#,##0.00"  

6、單元格字體及背景色設(shè)置

【例1】

Sub test()

   With [a1].Font

        .name = "微軟雅黑"

        .Size = 12

        .Color = RGB(25, 230, 122)

        .Bold = True

   End With

  

   [a2].Interior.ColorIndex = 3 '背景色設(shè)置為紅色

   [a3].Interior.Color = RGB(255, 0, 255)

End Sub

【例2】設(shè)置單元格中字符格式

Sub test()

   With Worksheets("Sheet2").Range("H1")

        .Clear

        .Value = "Y=X2+2X+3"

        .Characters(4, 1).Font.Superscript = True

        .Characters(1, 1).Font.ColorIndex = 3

   End With

End Sub

說明:將第4個(gè)字符設(shè)置為上標(biāo),第1個(gè)字符的顏色設(shè)置為紅色。注意,在每個(gè)單元格中都是用行列兩個(gè)標(biāo)號來定位某個(gè)字符的,因?yàn)橐粋€(gè)單元格可能有多行。

結(jié)果如下:

 

7、獲取用戶區(qū)域的行數(shù)及列數(shù)

rowCount = Worksheets(1).UsedRange.Rows.Count

colCount = Worksheets(1).UsedRange.Columns.Count

 

8、設(shè)置行高及列寬

Worksheets(1).Range("A:A").ColumnWidth = 20

Worksheets(1).Range("1:1").RowHeight = 120

選中區(qū)域列寬:Selection. Width;選中區(qū)域行高:Selection. Height;選中區(qū)域行數(shù):Selection.Rows.Count;選中區(qū)域列數(shù):Selection.Columns.Count;選中區(qū)域單元格數(shù):Selection.count.

Rem 自動(dòng)調(diào)整列寬

ThisWorkbook.Sheets("Sheet2").UsedRange.Columns.AutoFit

 

9、設(shè)置內(nèi)容顯示格式

Range.Font屬性代表指定對象的字體,有如下屬性:

名稱

說明

Background

返回或設(shè)置圖表中使用的文本的背景類型

Bold

返回或設(shè)置是否加粗

Color

返回或設(shè)置對象的主要顏色

FontStyle

返回或設(shè)置字體樣式,為String類型

Italic

返回或設(shè)置是否傾斜

Name

返回或設(shè)置字體名稱

Size

返回或設(shè)置字號

Underline

下劃線類型

Strikethrough

如果文本中間有一條水平刪除線,則該屬性值為true

 

With Worksheets(1).Range("1:1").Font

        .Size = 12

        .Italic = True

        .Color = vbRed

       

End With

 

10、獲取或設(shè)置隱藏的行

Range.Hidden屬性可以獲取或設(shè)置隱藏的行.

例:

Dim result As String

   result = ""

   For i = 1 To Worksheets(1).UsedRange.Rows.Count

        If Worksheets(1).Rows(i).Hidden = True Then

            result = result & i & ";"

            Worksheets(1).Rows(i).Hidden = False

        End If

   Next

   Worksheets(1).Cells(1, 5) = "隱藏的行數(shù)為:" & result

 

11、自動(dòng)填充

Range.AutoFill對指定區(qū)域的單元格執(zhí)行自動(dòng)填充功能。語法格式如下:

Range.AutoFIll(Destion,Type)

目標(biāo)區(qū)域必須包含源區(qū)域。

【示例】

Set sourcetemp = Worksheets(1).Range("A2:A5")

Set destiontemp = Worksheets(1).Range("A2:A20")

sourcetemp.AutoFill Destination:=destiontemp

 

12、刪除對象

Range.Delete刪除對象,語法格式如下:

Range.Delete(Shift),參數(shù)Shift指定調(diào)整單元格以替換刪除單元格的方式

【示例】將所有工作表內(nèi)容為“張三”的單元格全部刪除,并且單元格左移。

Dim tmp As Range

    For Each tmp In Worksheets(1).UsedRange

        If tmp.Value = "張三" Then

            tmp.Delete shift:=xlShiftToLeft

        End If

Next

 

13、拷貝與粘貼操作

Range.Copy將單元格區(qū)域數(shù)據(jù)復(fù)制到指定的區(qū)域或剪貼板中,語法格式如下:

Range.Copy(Destion)

如果省略Destion則復(fù)制到剪貼板中.

 

Range.PasteSpecial將內(nèi)容粘貼到Range,語法格式如下

Range.PasteSpecial(Paste,operation,SkipBlanks,Transpose).

參數(shù)paste取值如下:

含義

xlPasteAll

粘貼全部內(nèi)容

xlPasteAllExcepBorders

粘貼除邊框外的全部內(nèi)容

xlPasteMergingConditionalFormats

粘貼所有內(nèi)容,并且合條件格式

xlPasteAllUsingSourceFormat

使用源主題粘貼全部內(nèi)容

xlPasteFormulas

粘貼公式

xlPasteFormulasAndNumberFormats

粘貼公式和數(shù)字格式

xlPasteValues

粘貼值

xlPasteValuesAndNumberFormats·

粘貼值和數(shù)字格式

……

 

 

operation可選,要粘貼的操作,取值如下:

名稱

描述

xlPasteSpecialOperationAdd

2

復(fù)制的數(shù)據(jù)與目標(biāo)單元格中的值相加。

xlPasteSpecialOperationDivide

5

復(fù)制的數(shù)據(jù)除以目標(biāo)單元格中的值。

xlPasteSpecialOperationMultiply

4

復(fù)制的數(shù)據(jù)乘以目標(biāo)單元格中的值。

xlPasteSpecialOperationNone

-4142

粘貼操作中不執(zhí)行任何計(jì)算。

xlPasteSpecialOperationSubtract

3

復(fù)制的數(shù)據(jù)減去目標(biāo)單元格中的值。

 

SkipBlanks可選,如果設(shè)置為true,則不再粘貼剪貼板上區(qū)域中的空白單元格。

Transpose可選,如果設(shè)置為true,則在粘貼區(qū)域轉(zhuǎn)置行和列,默認(rèn)為false。

【示例1】

Sub test()

    Sheet2.Activate

   [a1:a9].Copy [f1]

   [d1:d9].Copy

   Sheet2.Paste Destination:=[g1]

End Sub

【示例2】

Worksheets(1).Range("A:B").Copy Destination:=Worksheets(2).Range("A:B")

Worksheets(1).Range("A:B").Copy  '拷貝到剪貼板

Worksheets(3).Range("A:B").PasteSpecial skipblanks:=True

 

14、向單元格填充相同數(shù)據(jù)

(1)Range.FillWodn方法

從指定區(qū)域的頂部單元格開始向下填充,直至該區(qū)域的底部。區(qū)域中首行單元格的內(nèi)容和格式將復(fù)制到區(qū)域中的其它行。

(2)Range.FillUp方法

從指定區(qū)域的頂部單元格開始向上填充,直至該區(qū)域的頂部。區(qū)域中尾行單元格的內(nèi)容和格式將復(fù)制到區(qū)域中的其它行。

(3)Range.FillLeft方法

從指定區(qū)域的最右邊單元格開始向左填充。區(qū)域中最右列單元格的內(nèi)容和格式將復(fù)制到區(qū)域中的其它列。

(4)Range.FillRight方法

從指定區(qū)域的最左邊單元格開始向右填充。區(qū)域中最左列單元格的內(nèi)容和格式將復(fù)制到區(qū)域中的其它列。

注:Range對象必須包括數(shù)據(jù)源單元格,并且數(shù)據(jù)源單元格為該區(qū)域的首單元格。

【示例】

Worksheets(1).Range("A2:H2").FillRight

 

15、刪除重復(fù)的列

Range.RemoveDuplicates方法從指定的區(qū)域中刪除重復(fù)的值。語法格式如下:

Range.RemoveDuplicates(Columns,Header)

參數(shù)說明:

Columns可選,搜索重復(fù)的列索引數(shù)組,如果省略該參數(shù),則刪除所有列都包含的記錄;

header可選,指定第1行是否為標(biāo)題行,xlNo為缺省值,xlYes表示是標(biāo)題行。

【示例】當(dāng)?shù)谝涣信c第二列相同時(shí)候表示重復(fù),首行為標(biāo)題行。

Worksheets(1).UsedRange.RemoveDuplicates Columns:=Array(1, 2), Header:=xlYes

 

16、排序操作

Range.Sort進(jìn)行排序操作。語法格式如下:

Range.Sort(Key1,Order1,Key2,Order2,Key3,Order3,Header,OrderCustom,MatchCase,Oriention,SortMethod,DataOptionl,DataOptional2,DataOptional3)

key1,key2,key3為排序字段,order1, order2, order3為排序順序,取值為xlAscending(升序)及xlDescending(降序)。

【示例】

Worksheets(1).UsedRange.Sort key1:=Range("A:A"), order1:=xlAscending, key2:=Range("B:B"), order2:=xlDescending, Header:=xlYes

resize屬性

17、單元格輸入公式或者數(shù)組公式

Sub test()

   Range("B1") = "=if(A1=""上海"",""√"",""×"")"   '在B1輸入公式

   Range("B1:B3").FillDown  '從B1開始自動(dòng)向下填充至B3

   Range("C1:C5").FormulaArray = "=row()"   '輸入數(shù)組公式

  

   With Range("C2")

        If .HasArray = True Then      ‘判斷該單元格是否存在數(shù)組公式

             .CurrentArray.FormulaArray = "=sum(Row(1:5))"  '將當(dāng)前的數(shù)組公式都變?yōu)?sum(Row(1:5)),不只是改變C2單元格的數(shù)組公式

        Else

             .FormulaArray = "=100-row()"

        End If

   End With

End Sub

18、其它常用方法

方法

說明

Range.AutoFit

更改指定的列寬或行高以達(dá)到最佳匹配。

Range.AtutoFilter

篩選功能

Rnage.BorderAround

設(shè)置邊框

Range.Clear

清除整個(gè)對象

Range.ClearComments

清除指定區(qū)域的所有單元格批注

Range.ClearContents

清除區(qū)域中的公式

Range.ClearFormats

清除對象的格式設(shè)置

Range.ClearHyperlinks

清除指定區(qū)域的所有的超鏈接

Range.Cut

將對象剪貼到指定的區(qū)域或剪貼板中.

Range.Find

查找操作

 

例:

Worksheets(1).Rows(1).AutoFit

Worksheets(2).UsedRange.ClearFormats

 

 

    本站是提供個(gè)人知識管理的網(wǎng)絡(luò)存儲空間,所有內(nèi)容均由用戶發(fā)布,不代表本站觀點(diǎn)。請注意甄別內(nèi)容中的聯(lián)系方式、誘導(dǎo)購買等信息,謹(jǐn)防詐騙。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請點(diǎn)擊一鍵舉報(bào)。
    轉(zhuǎn)藏 分享 獻(xiàn)花(0

    0條評論

    發(fā)表

    請遵守用戶 評論公約

    類似文章 更多