主要引用http://club.excelhome.net/thread-759847-1-1.html

1 Sub chengji() 2 ' 3 ' 宏1 宏 4 ' 5 Dim Finalrow As Integer 6 Finalrow = Cells(Rows.Count, 2) 'Rows.Count=1048576,就是本工作表最后一行的行數標,2表示第2列 7 Finalrow = Cells(Rows.Count, 2).End(xlUp) '.End(Direction)屬性表示想向那兒移動,等同於ctrl+方向鍵,自己可以試試,xlUp表示上移 8 9 Finalrow = Cells(Rows.Count, 2).End(xlUp).Row '求第二列數據最后一行非空單元格所在行的行標 10 Range("c2").Formula = "=a2*b2" '給c2單元格賦值公式 11 Range("C2").Copy Destination:=Range("C2:C" & Finalrow) '先寫操作,對C2進行copy,目的地是后面跟一個范圍 12 13 Range("B4").End(xlUp).Select '光標移動到B4的最上頭 14 Range("B4").End(xlToRight).Select 15 Range("B4", Range("B4").End(xlToRight)).Select 'B4至B4右邊所有的非空單元格被選中 16 End Sub
4,怎么引用R1C1樣式
R1C1樣式采用R來表示行,C來表示列
4.1 樣式的相對引用
對於列正數表示向右移指定數量的列,負數反之。
對於行正數表示向下移指定數量的行,負數反之。
如果省略掉R或C的方括號,表示和引用單元格在同行或同列。
4.2 樣式的絕對因用
在A1樣式中使用絕對引用要在行號或列號字母前使用$。但在R1C1樣式中只需省略方括號就行了,是不是很簡單!!!!!!!!

1 Sub huizong() 2 ' 3 ' 宏3 宏 4 ' 5 Dim Finalrow As Integer 6 Finalrow = Cells(Rows.Count, 2).End(xlUp).Row + 1 '第2列最后一個非空單元格行標再加1 7 8 Cells(Finalrow, 1).Value = "匯總" '給單元格賦值 9 10 Cells(Finalrow, 2).Resize(1, 3).FormulaR1C1 = "=SUM(R2C:R[-1]C)" '給單元格賦公式,加[]表示相對引用,省略的表示在本行或本列 11 12 End Sub

1 Sub Multiplicationtable() 2 Range("b1:m1").Value = Array(1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12) 'Array()函數可以生成一個行向量,也就是一個一維數組。“=”是把這個數組賦值給一個區域 3 Range("b1:m1").Font.Bold = True '格式為粗體 4 Range("b1:m1").Copy '選定區域並復制,相當於ctrl+c 5 Range("a2:a13").PasteSpecial Transpose:=True '相當於特殊粘貼,轉置。把剪切板里的東西轉置粘貼給等號前面的區域。 6 Range("b2:m13").FormulaR1C1 = "=rc1*r1c" '正方形區域內每個單元格都填充為R1C1樣式公式"=rc1*r1c",r后省略數字表單元格所在行,r兩側省略中括號表示絕對引用 7 'rc1*r1c表示單元格所在行第1列 * 第1行本單元格所在列 8 Cells.EntireColumn.AutoFit 9 'ActiveCell.EntireColumn.Cells(1, 1).Value = 5 'ActiveCell.EntireColumn返回一個 Range 對象,該對象表示包含指定區域的整列(或多列)。只讀 10 End Sub