主要引用http://club.excelhome.net/thread-759847-1-1.html
Sub chengji()
'
' 宏1 宏
'
Dim Finalrow As Integer
Finalrow = Cells(Rows.Count, ) 'Rows.Count=1048576,就是本工作表最后一行的行数标,2表示第2列
Finalrow = Cells(Rows.Count, ).End(xlUp) '.End(Direction)属性表示想向那儿移动,等同于ctrl+方向键,自己可以试试,xlUp表示上移 Finalrow = Cells(Rows.Count, ).End(xlUp).Row '求第二列数据最后一行非空单元格所在行的行标
Range("c2").Formula = "=a2*b2" '给c2单元格赋值公式
Range("C2").Copy Destination:=Range("C2:C" & Finalrow) '先写操作,对C2进行copy,目的地是后面跟一个范围 Range("B4").End(xlUp).Select '光标移动到B4的最上头
Range("B4").End(xlToRight).Select
Range("B4", Range("B4").End(xlToRight)).Select 'B4至B4右边所有的非空单元格被选中
End Sub
怎样找到非空区域行数及怎样选定范围
4,怎么引用R1C1样式
R1C1样式采用R来表示行,C来表示列
4.1 样式的相对引用
对于列正数表示向右移指定数量的列,负数反之。
对于行正数表示向下移指定数量的行,负数反之。
如果省略掉R或C的方括号,表示和引用单元格在同行或同列。
4.2 样式的绝对因用
在A1样式中使用绝对引用要在行号或列号字母前使用$。但在R1C1样式中只需省略方括号就行了,是不是很简单!!!!!!!!
Sub huizong()
'
' 宏3 宏
'
Dim Finalrow As Integer
Finalrow = Cells(Rows.Count, ).End(xlUp).Row + '第2列最后一个非空单元格行标再加1 Cells(Finalrow, ).Value = "汇总" '给单元格赋值 Cells(Finalrow, ).Resize(, ).FormulaR1C1 = "=SUM(R2C:R[-1]C)" '给单元格赋公式,加[]表示相对引用,省略的表示在本行或本列 End Sub
给区域赋R1C1公式
Sub Multiplicationtable()
Range("b1:m1").Value = Array(, , , , , , , , , , , ) 'Array()函数可以生成一个行向量,也就是一个一维数组。“=”是把这个数组赋值给一个区域
Range("b1:m1").Font.Bold = True '格式为粗体
Range("b1:m1").Copy '选定区域并复制,相当于ctrl+c
Range("a2:a13").PasteSpecial Transpose:=True '相当于特殊粘贴,转置。把剪切板里的东西转置粘贴给等号前面的区域。
Range("b2:m13").FormulaR1C1 = "=rc1*r1c" '正方形区域内每个单元格都填充为R1C1样式公式"=rc1*r1c",r后省略数字表单元格所在行,r两侧省略中括号表示绝对引用
'rc1*r1c表示单元格所在行第1列 * 第1行本单元格所在列
Cells.EntireColumn.AutoFit
'ActiveCell.EntireColumn.Cells(1, 1).Value = 5 'ActiveCell.EntireColumn返回一个 Range 对象,该对象表示包含指定区域的整列(或多列)。只读
End Sub
R1C1格式写交叉处乘积