VB写EXCEL公式
发布网友
发布时间:2022-04-25 23:08
我来回答
共4个回答
热心网友
时间:2022-06-18 13:18
干麻要 一个一个的 ,直接复制粘贴不就行了
Private Sub Command1_Click()
Workbooks.Open "C:\Users\Administrator\Desktop\程序\Book2.xls"
Range("AH4").Value = "=countif(C4:AD4,""白"")"
Range("AH4").Select
Selection.Copy
Range("AH5:AH60").Select
ActiveSheet.Paste
Set xlApp = CreateObject("Excel.Application")
xlApp.Visible = True
End Sub
热心网友
时间:2022-06-18 13:18
这个和countif有关系的。。countif的第一个参数必须为引用。。
而你的"C"&i:"AD"&i只是文本。错误就在这里。。追问那请问您这句话该如何编译呢?
追答
Range("AH" & i).formula = application.countif(range("C"&i,"AD"&i),"白")
上面这样写在excel中是不会产生公式的。如果你要产生公式。可以用indirect
还有你的for next也有错误
Private Sub Command1_Click()
Workbooks.Open "C:\Users\Administrator\Desktop\程序\Book2.xls"
Range("AH4").Value = "=countif(C4:AD4,""白"")"
Range("AH4").AutoFill Range("AH4:AH64")
Set xlApp = CreateObject("Excel.Application")
xlApp.Visible = True
End Sub
热心网友
时间:2022-06-18 13:19
确认一下,是想要写入具体的公式还是写入结果就可以?
后者的话,试试下面这句
Range("AH" & i).Value = Application.WorksheetFunction.CountIf(Range(Cells(i, 3), Cells(i, 30)), "*白*")
热心网友
时间:2022-06-18 13:19
VB设置公式可以
Range("A1").Value = "=B1+B2+B3"
依此类推:
For i = 1 To 30
Range("A" & i).Value = "=B" & 3 * i - 2 & "+B" & 3 * i - 1 & "+B" & 3 * i
Next i