根据if语句更改评论

在Excel中:

A1 =星期三(星期一,星期二,星期三)的下拉式列表

B1 = IF(A1 =“星期一”;“星期一”; IF(A1 =“星期二”;“星期二”; IF(A1 =“星期三”;“星期三”;“错误”)))

我想改变对B1的评论:

如果B1 =“星期一”,我想对B1发表评论:“周一是许多国家的一周的第一天”。

如果B1 =“星期二”,我想对B1说“周二是许多国家一周的第二天”。

如果B1 =“星期三”,我想对“B1周三是许多国家的儿童日”发表评论。

是否有可能没有VBA? 用VBA可以吗?

这是Mark Ba​​lhoff描述的工作表事件macros:

Private Sub Worksheet_Change(ByVal Target As Range) Dim r As Range Set r = Range("A1") If Intersect(Target, r) Is Nothing Then Exit Sub Application.EnableEvents = False v = r.Value If v = "Mon" Then msg = "Monday is the first day of a week in many countries" If v = "Tue" Then msg = "Monday is the first day of a week in many countries" If v = "Wed" Then msg = "Wednesday is the children day in many countries" With Range("B1") .ClearComments .AddComment .Comment.Visible = True .Comment.Text Text:=msg End With Application.EnableEvents = True End Sub 

因为它是工作表代码,所以安装和自动使用非常简单:

  1. 右键单击Excel窗口底部附近的选项卡名称
  2. select查看代码 – 这会popup一个VBE窗口
  3. 粘贴东西,closuresVBE窗口

如果您有任何疑问,请先在试用工作表上尝试。

如果您保存该工作簿,该macros将与它一起保存。 如果您在2003年以后使用的是Excel版本,则必须将该文件另存为.xlsm而不是.xlsx

要删除macros:

  1. 调出上面的VBE窗口
  2. 清除代码
  3. closuresVBE窗口

要了解有关macros的更多信息,请参阅:

http://www.mvps.org/dmcritchie/excel/getstarted.htm

http://msdn.microsoft.com/en-us/library/ee814735(v=office.14).aspx

要了解有关事件macros(工作表代码)的更多信息,请参阅:

http://www.mvps.org/dmcritchie/excel/event.htm

macros必须启用这个工作!