作者:乔山办公网日期:
返回目录:excel表格制作
如图:C4=IF(B4<>"",$F$1,"")
我把它往下拖动百几格,下方的格也有了函数,如C5=IF(B5<>"",$F$1,"")等
但我想让C4下的所有单元格都有相应的度函数,手工拖动就不实际了,所以想在VBA中加入这个功能。
除了C列需知要这样外,D列也要,如D4下所有单元格也加入“选中D4往下拖的功能”
补充一下,我是想道直接用VBA来实现这个功能,用到单元格的时候执行相应的函数就内行了,不用往单元格里插入函数,这样也可大大容减小文件体积。
当然无法执行百
Worksheets("Sheet1").Range("A3").Value ‘
代表是对这个单元格值的引用,你没有写要干什么度,是给这个单元格赋于新值,还是专什么的
Worksheets("Sheet1").Range("A3").Value 是一个属性
如
Private Sub CommandButton1_Click()
dim a
a=Worksheets("Sheet1").Range("A3").Value ‘
End sub
或属
Private Sub CommandButton1_Click()
Worksheets("Sheet1").Range("A3").Value=5
End Sub
或
Private Sub CommandButton1_Click()
msgbox Worksheets("Sheet1").Range("A3").Value
End Sub
都是可以执行的
代码如下:
Sub 插入行()
'
' 宏1 宏
'
' '定义两个动态数组存放B、C两列的数据
Dim a(), b()
'定义一个整数存放现有的数据行e69da5e887aa7a686964616f364数
Dim m As Integer
'获取现有数据的行数
m = ActiveSheet.UsedRange.Rows.Count
'重新定义数组的大小
ReDim a(m), b(m)
'将B、C两列的数据赋值到a()、b()两个数组中
For i = 1 To m
a(i) = Cells(i, 2)
b(i) = Cells(i, 3)
Next
'选中第二行整行
Rows("2:2").EntireRow.Select
'开始空行的插入和单元格数据的填入
For i = 1 To m
For j = 1 To a(i)
'插入新的一行
Selection.Insert Shift:=xlDown, CopyOrigin:=xlFormatFromLeftOrAbove
'将C列的值赋予新插入行的首个单元格
ActiveCell.Value = b(i)
'活动单元格下移一行
ActiveCell.Offset(1, 0).Rows("1:1").EntireRow.Select
Next
'活动单元格下移一行
ActiveCell.Offset(1, 0).Rows("1:1").EntireRow.Select
Next
End Sub
---------------------------------------------------------------------------------------
感觉可以,记得采纳哦!