n*****r 发帖数: 1087 | 1 比如我有很多sheet,我把每个sheet第一行的title集中到一起,就是红色字体部分。
然后我需要把每个sheet的所有title作为一个dropdown list,放在黄色那里。
http://www.mrexcel.com/forum/excel-questions/418567-how-create-
.......Formula1:="Monday,Tuesday,Wednesday,Thursday,Friday,Saturday,Sunday"
谁能教教我这种情况如何写formula1替代。
因为sheet很多,每个file的sheet数目也不同,每个sheet的title数目也不同,所以我
需要写个loop之类,我的逻辑就是:
For i=1 to 3
With cells(1,3*i-1).Validation
.Delete
.Add Type:=xlValidateList, AlertStyle:=xlValidAlertStop, Operator:= _
xlBetween, Formula1:="Range(Cells("4,3*i-2),Cells(4-1+Sheets(i+1).
UsedRange.Columns.Count,3*i-2))"
End With
Next i
上面的formula1那里肯定错了,我只是写出逻辑,请教正确的应该怎么写,如果能在
Range之前再写具体哪个sheet就更好了,当前放dropdown list的sheet name中间有
Space,比如说Sheets("XXX YY"),如果能加到formula1那里就更好了。
跪谢。 | s**********o 发帖数: 14359 | 2 做INTERFACE不用EXCEL的,
做DROPDOWN OX不用VB也用个ACCESS吧,
EXCEL就是个大排档,想干净好吃还要去餐馆 | l*****e 发帖数: 3343 | 3 dim myRng as range
range("A1").select
dim myStr as string
For i=1 to 3
set myrng=activecell.offset(4,3*I-2)
myStr="=" & myrng.address
With cells(1,3*i-1).Validation
.Delete
.Add Type:=xlValidateList, AlertStyle:=xlValidAlertStop, Operator:= _
xlBetween, Formula1:=myStr
End With
Next I
【在 n*****r 的大作中提到】 : 比如我有很多sheet,我把每个sheet第一行的title集中到一起,就是红色字体部分。 : 然后我需要把每个sheet的所有title作为一个dropdown list,放在黄色那里。 : http://www.mrexcel.com/forum/excel-questions/418567-how-create- : .......Formula1:="Monday,Tuesday,Wednesday,Thursday,Friday,Saturday,Sunday" : 谁能教教我这种情况如何写formula1替代。 : 因为sheet很多,每个file的sheet数目也不同,每个sheet的title数目也不同,所以我 : 需要写个loop之类,我的逻辑就是: : For i=1 to 3 : With cells(1,3*i-1).Validation : .Delete
| l*****e 发帖数: 3343 | 4 should be:
myStr="=" & Range(myRng, myRng.end(xldown)).address | n*****r 发帖数: 1087 | 5 谢谢谢谢,非常感谢,每次您都热心解答。
【在 l*****e 的大作中提到】 : dim myRng as range : range("A1").select : dim myStr as string : For i=1 to 3 : set myrng=activecell.offset(4,3*I-2) : myStr="=" & myrng.address : With cells(1,3*i-1).Validation : .Delete : .Add Type:=xlValidateList, AlertStyle:=xlValidAlertStop, Operator:= _ : xlBetween, Formula1:=myStr
|
|