Excel VBA:根据单元格值将字符串变量设置为通配符

时间:2018-04-02 20:34:29

标签: excel-vba excel-vba-mac vba excel

我正在创建一个电子表格,其中可以根据“数据创建者”限制宏 - 根据输入数据的人,每列数据都有一个列。即如果“Dan”进入数据行,则在Z列中标记为“Dan”。然后,您可以根据单元格中的下拉列表选择要通过宏运行的“数据创建者”,并提供完整的名称列表,在这里,您还可以选择一个星号来查看所有记录,这些记录最好在VBA中充当通配符。原始数据位于第1页,下拉列表位于第2页的单元格“D29”中。问题是选择星号时,它不会在我的代码中充当通配符。即,如果选择了名称,则只在代码中处理该数据。如果选择了星号,则处理NO数据。这是我的代码:

<div *ngIf="domain || library">
    <!-- <h2>{{ domain.catergory | uppercase }} || {{ library.name | uppercase }}</h2> -->
    <h2>{{ domain.catergory | uppercase }}</h2>
    <h2>{{ library.name | uppercase }}</h2>
<div>

我知道我可以通过select case语句的另一个if语句处理这个问题,但是我希望使用Asterisk可以减少代码。非常感谢所有建议!

我正在运行Excel 2017 for Mac。

1 个答案:

答案 0 :(得分:1)

更安全,可能更有效的替代方案:

Dim Record As String, cell As Range
Record = Sheets("Sheet 2").Range("D29") 

For Each cell In Sheets("Sheet 1").Range("Z3:Z100")
    If cell = Record Or Record = "*" Then
        'Execute Code
    End If
Next cell