一区二区三区日韩精品-日韩经典一区二区三区-五月激情综合丁香婷婷-欧美精品中文字幕专区

分享

Excel VBA教程:Range集合

 昵稱6335486 2011-03-13
多個對象
Range
多個對象

代表某一單元格、某一行、某一列、某一選定區(qū)域(該區(qū)域可包含一個或若干連續(xù)單元格區(qū)域),或者某一三維區(qū)域。

Range集合用法

本部分將說明下列返回 Range對象的屬性和方法:

  • Range屬性
  • Cells屬性
  • Range 和 Cells
  • Offset屬性
  • Union方法

Range屬性

可用 Range(arg)(其中 arg 為區(qū)域名稱)來返回代表單個單元格或單元格區(qū)域的 Range對象。下例將單元格 A1 中的值賦給單元格 A5。

Worksheets("Sheet1").Range("A5").Value = _
    Worksheets("Sheet1").Range("A1").Value

下例設(shè)置單元格區(qū)域 A1:H8 中每個單元格的公式,用隨機數(shù)填充該區(qū)域。在沒有對象識別符(句號左邊的對象)的情況下,使用 Range屬性將返回活動表上的一個區(qū)域。如果活動表不是工作表,則該方法無效。在沒有明確的對象識別符的情況下,使用 Range屬性之前,可用Activate方法來激活工作表。

Worksheets("Sheet1").Activate
Range("A1:H8").Formula = "=Rand()"    'Range is on the active sheet

下例清除區(qū)域 Criteria 中的內(nèi)容。

Worksheets(1).Range("Criteria").ClearContents

如果用文本參數(shù)指定區(qū)域地址,必須以 A1 樣式記號指定該地址(不能用 R1C1 樣式記號)。

Cells屬性

可用 Cells(row, column)(其中 row 為行號,column 為列標(biāo))返回單個單元格。下例將單元格 A1 賦值為 24。

Worksheets(1).Cells(1, 1).Value = 24

下例設(shè)置單元格 A2 的公式。

ActiveSheet.Cells(2, 1).Formula = "=Sum(B1:B5)"

雖然也可用Range("A1") 返回單元格 A1,但有時用 Cells屬性更為方便,因為對行或列使用變量。下例在 Sheet1 上創(chuàng)建行號和列標(biāo)。注意,當(dāng)工作表激活以后,使用 Cells屬性時不必明確聲明工作表(它將返回活動工作表上的單元格)。

Sub SetUpTable()
Worksheets("Sheet1").Activate
For TheYear = 1 To 5
Cells(1, TheYear + 1).Value = 1990 + TheYear
Next TheYear
For TheQuarter = 1 To 4
Cells(TheQuarter + 1, 1).Value = "Q" & TheQuarter
Next TheQuarter
End Sub

雖然可用 Visual Basic 字符串函數(shù)轉(zhuǎn)換 A1 樣式引用,但使用Cells(1, 1) 記號更為簡便(而且也是更好的編程習(xí)慣)。

可用 expression.Cells(row, column) 返回區(qū)域中的一部分,其中 expression 是返回 Range對象的表達(dá)式,row 和 column 為相對于該區(qū)域左上角的偏移量。下例設(shè)置單元格 C5 中的公式。

Worksheets(1).Range("C5:C10").Cells(1, 1).Formula = "=Rand()"

Range 和 Cells

可用 Range(cell1, cell2) 返回一個 Range對象,其中 cell1 和 cell2 為指定起始和終止位置的 Range對象。下例設(shè)置單元格區(qū)域 A1:J10 的邊框線條的樣式。

With Worksheets(1)
    .Range(.Cells(1, 1), _
        .Cells(10, 10)).Borders.LineStyle = xlThick
End With

注意每個 Cells屬性之前的句點。如果前導(dǎo)的 With 語句應(yīng)用于該 Cells屬性,那么這些句點就是必需的。本示例中,句點指示單元格處于第一張工作表上。如果沒有句點,Cells屬性將返回活動工作表上的單元格。

Offset屬性

可用 Offset(row, column)(其中 row 和 column 為行偏移量和列偏移量)返回相對于另一區(qū)域在指定偏移量處的區(qū)域。下例選定位于當(dāng)前選定區(qū)域左上角單元格的向下三行且向右一列處的單元格。由于必須選定位于活動工作表上的單元格,因此必須先激活工作表。

Worksheets("Sheet1").Activate
'Can't select unless the sheet is active
Selection.Offset(3, 1).Range("A1").Select

Union方法

可用 Union(range1, range2, ...) 返回多塊區(qū)域,即該區(qū)域由兩個或多個連續(xù)的單元格區(qū)域所組成。下例創(chuàng)建由單元格區(qū)域 A1:B2 和 C3:D4 組合定義的對象,然后選定該定義區(qū)域。

Dim r1 As Range, r2 As Range, myMultiAreaRange As Range
Worksheets("sheet1").Activate
Set r1 = Range("A1:B2")
Set r2 = Range("C3:D4")
Set myMultiAreaRange = Union(r1, r2)
myMultiAreaRange.Select

使用包含若干塊的選定區(qū)域時,Areas屬性很有用。它將一個多塊選定區(qū)域分割為單個的 Range對象,然后將這些對象作為一個集合返回。使用返回的集合的Count屬性可檢測一個選定區(qū)域是否包含多塊區(qū)域,如下例所示。

Sub NoMultiAreaSelection()
NumberOfSelectedAreas = Selection.Areas.Count
If NumberOfSelectedAreas > 1 Then
MsgBox "You cannot carry out this command " & _
"on multi-area selections"
End If
End Sub

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

    0條評論

    發(fā)表

    請遵守用戶 評論公約

    類似文章 更多

    中国美女草逼一级黄片视频| 日韩中文字幕视频在线高清版| 国内尹人香蕉综合在线| 国产一区二区三区av在线| 亚洲男人的天堂久久a| 国产午夜精品福利免费不| 国产黑人一区二区三区| 欧美一级内射一色桃子| 亚洲丁香婷婷久久一区| 国产又色又爽又黄又大| 亚洲免费黄色高清在线观看| 在线中文字幕亚洲欧美一区| 欧美中文日韩一区久久| 色哟哟国产精品免费视频| 99久久婷婷国产亚洲综合精品| 国产精品制服丝袜美腿丝袜| 国产不卡在线免费观看视频| 五月婷婷六月丁香狠狠| 国产级别精品一区二区视频| 成年女人午夜在线视频| 亚洲熟妇熟女久久精品| 欧美日韩黑人免费观看| 国产伦精品一一区二区三区高清版| 国产精品午夜一区二区三区| 十八禁日本一区二区三区| 久久人人爽人人爽大片av| 国产欧美一区二区久久| 不卡中文字幕在线免费看| 观看日韩精品在线视频| 国产免费操美女逼视频| 91久久精品在这里色伊人| 国产欧美一区二区色综合| 国产一级内片内射免费看| 亚洲国产欧美精品久久| 深夜福利欲求不满的人妻| 狠色婷婷久久一区二区三区| 国产精品一区二区三区黄色片| 国产成人午夜福利片片| 欧美日韩国产成人高潮| 国产丝袜女优一区二区三区| 一区二区在线激情视频|