excel 中怎样让a1单元格内为1时,b1填充数字“1”,a1为5时,b1~b5单元格内都填写“1”

excel 中怎样让a1单元格内为1时,b1填充数字“1”,a1为5时,b1~b5单元格内都填写“1”,我想的是a1内无论填什么数字,b列都会有相应数量的单元格被填充,不是手动下拉单元格!如果不用逻辑语言做,用vba也行~

第1个回答  2012-09-27
Private Sub Worksheet_Change(ByVal Target As Range)
Dim i
If Target.Address <> "$A$1" Then Exit Sub

For i = 1 To Val(Target)
Cells(i, 2) = 1
Next i
End Sub

这是很笨的办法,如果代码编写不当,会造成嵌套溢出错误。建议还是老老实实用下拉的公式比较好!
第2个回答  2012-09-27
在b1输入:
=if(a1>=1,1,"")
在b2输入:
=if(COUNTIF(b$1:b1,1)<a$1,1,"")
选中b2下拉。

额。。。
看错了。原来不要下拉的啊。。。本回答被网友采纳
第3个回答  2012-09-27
选择B列
输入公式
=IF(OR(ROW()>A$1,A$1=""),"",1)

按CTRL+ENTER组合键
第4个回答  2012-09-27
使用VBA,具体如下:
Sub Test1()
Dim i As Integer '用于循环

With Worksheets(1)
For i = 1 To .Cells(1, 1)
.Cells(i, 2) = 1
Next
End With

End Sub
相似回答