1

我有一张包含名称和技能的表格,其中 1 表示“您没有此技能”,3 表示“您有此技能”。当我将它从 1 更改为 3 时,您会收到一个消息框:您确定要这样做吗?我想要msgbox中的名字和技能,但不知道怎么做。

例如,我将单元格 D12 从 1 更改为 3。消息应该说:

您确定要更改(单元格 A12 的值/人名)的(单元格 D1 的值/技能)吗

没关系。但它适用于活动单元格,因此 D1 和 A12 会根据哪个单元格处于活动状态而变化。我该怎么做呢?

4

1 回答 1

1

您可以使用R1C1 Reference Style。在这种情况下,您必须将 Excel 的设置切换为 R1C1 参考样式:

Office 2007中,单击Office按钮,然后单击Excel 选项,您将在最后的Exit Excel附近找到该选项。

转到公式选项卡并在使用公式下,检查R1C1 参考样式以使用它。

如果您=R[2]C[1]A1单元格中指定公式,它将从B3单元格中返回一个值。

第二种方法是使用以下公式:

=OFFSET(INDIRECT(ADDRESS(ROW(), COLUMN())),2,1)

在这种情况下,您不必更改任何设置

编辑:

我试过你的例子。如果您想通过使用 VBA 来实现这一点,那就更容易了:

Dim skillValue As String
skillValue = Range(Cells(1, Selection.Column), Cells(1, Selection.Column))
Dim nameValue As String
nameValue = Range(Cells(Selection.Row, 1), Cells(Selection.Row, 1))
If MsgBox("Are you sure you want to change " & skillValue & " of " & nameValue & "?", vbOKCancel) = vbOK Then
...............
于 2013-02-18T10:37:46.277 回答