Excel Range 介紹

 

合併單元格ide

 Sub MergeCells()
  MsgBox "合併單元格A2:C2,並將文本設爲居中對齊"
  Range("A2:C2").Select
  With Selection
   .MergeCells = True
   .HorizontalAlignment = xlCenter
  End With
 End Sub對象

限制單元格移動的範圍ci

 Sub ScrollArea1()
  MsgBox "將單元格的移動範圍限制在單元格區域B2:D6中"
  ActiveSheet.ScrollArea = "B2:D6"
  End Sub
  Sub ScrollArea2()
  MsgBox "解除移動範圍限制"
  ActiveSheet.ScrollArea = ""
 End Sub字符串

獲取單元格的位置(Address屬性)域名

 Sub GetAddress()
  MsgBox "顯示所選單元格區域的地址"
  MsgBox "絕對地址:" & Selection.Address
  MsgBox "行的絕對地址:" & Selection.Address(RowAbsolute:=False)
  MsgBox "列的絕對地址:" & Selection.Address(ColumnAbsolute:=False)
  MsgBox "以R1C1形式顯示:" & Selection.Address(ReferenceStyle:=xlR1C1)
  MsgBox "相對地址:" & Selection.Address(False, False)
 End Subit

刪除單元格區域(Delete方法)io

 Sub DeleteRange()
  MsgBox "刪除單元格區域C2:D6後,右側的單元格向左移動"
  ActiveSheet.Range("C2:D6").Delete (xlShiftToLeft)
 End Subast

-------------------------
  知識總結
-------------------------
簡單總結Range對象的一些經常使用屬性和方法class

一、Activate與Select表單

  試驗下面的過程:

  Sub SelectAndActivate()
   Range("B3:E10").Select
   Range("C5").Activate
  End Sub

  Select與Activate

  Selection指單元格區域B3:E10,而ActiveCell則是單元格C5;ActiveCell表明單個的單元格,而Selection則能夠表明單個單元格,也能夠表明單元格區域。

二、Range屬性

  可使用Application對象的Range屬性引用Range對象,如Application.Range(「B2」) ‘表明當前工做表中的單元格B2若引用當前工做表中的單元格,也能夠忽略前面的Application對象。
  Range(「A1:D10」) ‘表明當前工做表中的單元格區域A1:D10
  Range(「A1:A10,C1:C10,E1:E10」) ‘表明當前工做表中非連續的三個區域組成的單元格區域
  Range屬性也接受指向單元格區域對角的兩個參數,如:
  Range(「A1」,」D10」) ‘表明單元格區域A1:D10
  固然,Range屬性也接受單元格區域名稱,如:
  Range(「Data」) ‘表明名爲Data的數據區域Range屬性的參數能夠是對象也能夠是字符串,如:Range(「A1」,Range(「LastCell」))

三、單元格引用的快捷方式

  能夠在引用區域兩側加上方括號來快速引用單元格區域,如:
  [B2]
  [A1:D10]
  [A1:A10,C1:C10,E1:E10]
  [Data]
  但其引用的是絕對區域。

四、Cells屬性

  可使用Cells屬性來引用Range對象。如:
  ActiveSheet.Cells
  Application.Cells ‘引用當前工做表中的全部單元格
  Cell(2,2)
  Cell(2,」B」) ‘引用單元格B2
  Range(Cells(1,1),Cells(10,5)) ‘引用單元格區域A1:E10
  若想在一個單元格區域中循環時,使用Cells屬性是很方便的。
  也可使用Cells屬性進行相對引用,如:Range(「D10:G20」).Cells(2,3) ‘表示引用單元格區域D10:G20中第2行第3列的單元格,即單元格F11也可以使用語句:Range(「D10」).Cells(2,3)達到一樣的引用效果。

五、Offset屬性

  Offset屬性基於當前單元格按所給參數進行偏移,與Cells屬性不一樣的是,它基於0即基準單元格爲0,如:Range(「A10」).Cells(1,1)和Range(「A10」).Offset(0,0)都表示單元格A10當想引用於基準單元格區域一樣大小的單元格區域時,則Offset屬性是有用的。

六、Resize屬性

  可以使用Resize屬性獲取相對於原單元格區域左上角單元格指定大小的區域。

七、SpecialCells方法

SpecialCells方法對應於「定位條件」對話框

八、CurrentRegion屬性

  使用CurrentRegion屬性能夠選取當前單元格所在區域,即周圍是空行和空列所圍成的矩形區域,等價於「Ctrl+Shift+*」快捷鍵。

九、End屬性

  End屬性所表明的操做等價於「Ctrl+方向箭」的操做,使用常量xlUp、xlDown、xlToLeft和xlToRight分別表明上、下、左、右箭。

十、Columns屬性和Rows屬性

  Columns屬性和Rows屬性分別返回單元格區域中的全部列和全部行。

十一、Areas集合

  在多個非連續的單元格區域中使用Columns屬性和Rows屬性時,只是返回第一個區域的行或列,如:Range(「A1:B5,C6:D10,E11:F15」).Rows.Count
將返回5。此時應使用Areas集合來返回區域中每一個塊的地址,如:
  For Each Rng In Range(「A1:B5,C6:D10,E11:F15」).Areas
   MsgBox Rng.Address
  Next Rng

十二、Union方法和Intersect方法

  當想從兩個或多個單元格區域中生成一個單元格區域時,使用Union方法;當找到兩個或多個單元格區域共同擁有的單元格區域時,使用Intersect方法。

相關文章
相關標籤/搜索