0

我是 Excel VBA 的新手。我正在尝试做一个非常简单的函数,该函数的工作方式类似于如果特定单元格(例如 D)包含一些分类字符串,那么它将在另一个单元格中返回特定值。

例如,如果 D 列的任何单元格在其单元格的任何位置包含“Books”、“Food”、“Fruits”字符串,那么它将分别在 E 列中返回 01、02、03。当然,这将是一项非常简单的任务,可能早先提出的问题,但由于我是新手,请通过简短或任何链接让我知道以获取解决方案。

提前致谢。

4

3 回答 3

1

简单修复下面的答案

For Counter = 1 To 2000
    Set curCell = Worksheets("Sheet1").Cells(Counter, 4)
    '  'Books', 'Food', 'Fruits
    If curCell.Value = "Books" Then
        Worksheets("Sheet1").Cells(Counter, 5) = 1
    ElseIf curCell.Value = "Food" Then
        Worksheets("Sheet1").Cells(Counter, 5) = 2
    ElseIf curCell.Value = "Fruits" Then
        Worksheets("Sheet1").Cells(Counter, 5) = 3
    End If
Next Counter
于 2013-01-09T09:41:44.833 回答
0

你不需要宏。
您可以使用Vlookupon 第二列来搜索表中第一列的值。

于 2013-01-09T05:53:36.227 回答
0
For Counter = 1 To 2000
    Set curCell = Worksheets("Sheet1").Cells(Counter, 4)
    '  'Books', 'Food', 'Fruits
    If curCell.Value = "Books" Then Worksheets("Sheet1").Cells(Counter, 5) = 01
    elseIf curCell.Value = "Food" Then Worksheets("Sheet1").Cells(Counter, 5) = 02 
    elseIf curCell.Value = "Fruits" Then Worksheets("Sheet1").Cells(Counter, 5) = 03
    end if
Next Counter
于 2013-01-09T05:24:29.450 回答