第一个问题,希望我做对了...
我在A:C单元格中获得了一系列数据 让我们举个例子:
在单元格D3 中,我希望将其自动填充设置为“水果”。如果A:C中的任何单元格都不是这些选择之一,则返回空白。 目的是为A:C单元格提供下拉列表,并基于这些单元的组合返回某些值。使用VBA而不是公式,这怎么可能轻松实现?
我能够对单个单元格执行此操作,永远不会多个。
答案 0 :(得分:0)
在下面的代码中,我使用第2步,每两行测试一次值。如果要测试每一行,可以将其删除。
Option Explicit
Sub test()
Dim LastRow As Long, Row As Long
With ThisWorkbook.Worksheets("Sheet1")
LastRow = .Cells(.Rows.Count, "A").End(xlUp).Row
For Row = 2 To LastRow Step 2
If .Range("A" & Row).Value = "Apple" Or .Range("A" & Row).Value = "Banana" Or .Range("A" & Row).Value = "Tomato" Then
If .Range("B" & Row).Value = "Apple" Or .Range("B" & Row).Value = "Banana" Or .Range("B" & Row).Value = "Tomato" Then
If .Range("C" & Row + 1).Value = "Apple" Or .Range("C" & Row + 1).Value = "Banana" Or .Range("C" & Row + 1).Value = "Tomato" Then
.Range("D" & Row + 1).Value = "Fruits"
End If
Else
Exit For
End If
Else
Exit For
End If
Next Row
End With
End Sub