我有一个ComboBox,它搜索确定的范围并替换所有公式中的内容。例如:
ComboBox的当前值是“MAI”
=COUNTIFS('CNAEs Inválidos MAI'!A:A;C8)
用户从ComboBox中选择值“JUN”,vba函数将其替换为:
=COUNTIFS('CNAEs Inválidos JUN'!A:A;C8)
搜索和替换只能工作一次,因为我无法从ComboBox中获取当前值以进行搜索。
到目前为止,这就是我所拥有的:
Option Explicit
Private Sub ComboBox1_Change()
Range("A1:R53").Select
Selection.Replace What:=ComboBox1.Value, Replacement:=ComboBox1.Value, LookAt:=xlPart, _
SearchOrder:=xlByRows, MatchCase:=False
Range("A1").Select
End Sub
有没有办法获取ComboBox当前值和ComboBox新选择的值?
答案 0 :(得分:1)
首先查看INDIRECT
工作表函数=COUNTIFS(INDIRECT("'CNAEs Inválidos " & combo value & "'!A:A";C8)
这些行
答案 1 :(得分:0)
你本身需要ActiveX ComboBox
吗?
否则请改用Form control
。
在“表单”控件格式设置中,设置“输入范围”和“输出”单元格。
输入范围将采用您的文本值(MAI,JUN等)
输出单元格将在下拉列表中显示所选索引(1,2等)。
使用查找函数中的输出单元格值从输入范围中再次获取文本值。然后使用Indirect
公式获得您所追求的结果公式。