Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/excel/26.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Vba 单击“如何将消息框中显示的值存储到其他工作表”;“好的”;在消息框上_Vba_Excel_Vbscript - Fatal编程技术网

Vba 单击“如何将消息框中显示的值存储到其他工作表”;“好的”;在消息框上

Vba 单击“如何将消息框中显示的值存储到其他工作表”;“好的”;在消息框上,vba,excel,vbscript,Vba,Excel,Vbscript,是否有任何方法可以将使用vba在excel中的消息框中显示的数据一个接一个地存储到同一工作簿中的新工作表中,就像使用vba在消息框上单击“确定”后的条目一样 这是我按照@MarcinSzaleniec的建议尝试过的代码,但它不起作用- Sub Workbook_AfterSave(ByVal Success As Boolean) Dim sMsg As String sMsg = MsgBox("Values saved in cell " & Replace(Selection.Ad

是否有任何方法可以将使用vba在excel中的消息框中显示的数据一个接一个地存储到同一工作簿中的新工作表中,就像使用vba在消息框上单击“确定”后的条目一样

这是我按照@MarcinSzaleniec的建议尝试过的代码,但它不起作用-

Sub Workbook_AfterSave(ByVal Success As Boolean)
Dim sMsg As String
sMsg = MsgBox("Values saved in cell " & Replace(Selection.Address, "$", ""))
If MsgBox(sMsg) = vbOK Then ThisWorkbook.Sheets("Sheet2").Range("A1") = sMsg

End Sub

Sub Test()

Workbook_AfterSave True

End Sub
我想在点击“确定”按钮后将这些值存储在其他表格中,如下图所示-


当然是这样。您必须先存储它,然后再显示它。 比方说

因此,您已经将消息存储在变量和工作表中,您可以随心所欲地使用它

如果只想在按下ok后在工作表中打印,可以

If MsgBox(sMsg) = vbOK Then Workkbooks("MySheet").Range("A1") = sMsg

你能举个例子吗?
If MsgBox(sMsg) = vbOK Then Workkbooks("MySheet").Range("A1") = sMsg