用函数无法实现你要的功能,因为你的要求本身就是“既要马儿跑,又要马儿不吃草”
用VBA:
打开VBA代码输入窗口之后,在对应的Sheet代码输入窗口中输入以下代码:
Private Sub Worksheet_Change(ByVal Target As Range)
If Target = Cells(1, 1) Then
If Cells(1, 1) = "自定义" Then
Cells(1, 2) = ""
Else
Cells(1, 2) = "=vlookup(...)"
End If
End If
End Sub
以上代码中Cell(1,1)表示A1,Cell(1,2)表示B1
另外,表达式中的Vlookup函数我没有写完整,你自己补充完整就行了
靠函数好像实现不了,只能通过在另一个地方设置允许编辑的单元格,比如C1是可编辑的,就可以用if函数设置当A1为自定义的时候,B1=C1。
不然就要靠VBA了吧