...某单元格必须被重新编辑一次,才继续执行后面的代码?
发布网友
发布时间:2024-08-20 03:53
我来回答
共2个回答
热心网友
时间:2024-08-23 08:09
你可以使用VBA的Application.InputBox函数来实现这个功能。首先,你可以在表格的工作簿的模块中编写以下代码:
Private Sub Workbook_Open()
'将A1单元格的值存入变量originalValue
originalValue = Range("A1").Value
End Sub
然后,在你想要执行打印代码之前,添加以下代码来检测A1单元格是否被重新编辑过:
'检测A1单元格是否被重新编辑过
If Range("A1").Value <> originalValue Then
'如果A1单元格已被重新编辑,则执行打印代码
'(这里假设你的打印代码写在名为PrintCode的子程序中)
Call PrintCode
Else
'如果A1单元格未被重新编辑,则弹出提示框
Dim prompt As String
prompt = "请重新编辑A1单元格"
Application.InputBox prompt, Type:=2
End If
上述代码中的Application.InputBox函数会弹出一个提示框,要求用户输入内容。当用户在提示框中输入内容并点击“确定”按钮时,程序会再次检测A1单元格是否被重新编辑过,如果已被重新编辑,则执行打印代码;如果未被重新编辑,则再次弹出提示框。
希望这对你有帮助!
热心网友
时间:2024-08-23 08:16
您可以使用 Worksheet_Change 事件来实现这一目的。Worksheet_Change 事件会在工作表中的单元格值被更改时触发。您可以在您的工作簿中的每个工作表上都定义一个 Worksheet_Change 事件,以便在每个工作表上监视单元格更改。
EXCEL 如何用VBA检测 某单元格必须被重新编辑一次,才继续执行后面的代码...
originalValue = Range("A1").Value End Sub 然后,在你想要执行打印代码之前,添加以下代码来检测A1单元格是否被重新编辑过:'检测A1单元格是否被重新编辑过 If Range("A1").Value <> originalValue Then '如果A1单元格已被重新编辑,则执行打印代码 '(这里假设你的打印代码写在名为PrintCode的子...
你好,请教:EXCEL某一列的数值想输入两次才可以输入,以防止输错,有什么...
MsgBox ("数据有误,请重新输入")End If Loop 然后选中你要输入的单元格,运行相应的宏就行了。这个是整列的,不过由于本人才疏学浅,不会让VBA自己判断,所以只能LZ自己先输入下 循环次数也就是相应的行数^_^(假设你这一列要输入10个数据,就是说行数为10,那你就在循环次数哪里输入10)Dim ...
excel 的宏的运用
5)选择"格式化文本"宏,并执行.现在A3单元格中,你的名字变为斜体字还带有下划线.选择"窗口"-"取消隐藏",可以将PERSONAL.XLS显示出来,其中没有任何文字,但通过VBA编辑器可以在其中的模块中找到"格式化文本"这个宏.在VBA编辑器中可以对该宏进行直接编辑或者删除.如果PERSONAL.XLS中一个宏都没有,在启动EXCEL时仍会打...
EXCEL表格某一个单元格内容是不断自动更新的,如何把这些数据按顺序记录...
excel复制代码1=IF(A1<>"", A1, B1)这个公式的意思是,如果A1非空,就显示A1的值;否则,沿用B1的值。这样,只要你在A1处输入新的值,B1就会自动更新。然后,你可以拖动或填充句柄将此公式应用到B列的其他单元格。方法二:使用数据透视表 如果数据量非常大,或者更新频率很高,使用数据透视表可能...
...如何快捷输入(适合打印)某几个固定单元格内的不同内容。。类似信封打...
看上图,再给你一段代码,删除表的代码,此代码的作用是,不删第一个表,删除第2个及后面的所有表,方便你两段代码反复测试着玩。要执行哪一段代码,就先把鼠标点击进该段代码中(Sub至End sub之间)的任意位置,再点那个执行代码的按钮即可。为方便你复制代码,删表代码如下:Sub 删除从第2个表...
Excel如何做一个按钮,每按一次让A1单元格的数据按顺序复制B1,B2,B3...
在“Sub...”的下面,写入以下宏代码:If n < 30 Then n = n + 1 Else n = 1 [A1] = Range("B" & n)关闭VBA编辑器,返回到Excel表格界面,右键点击按钮,选择“编辑文字”,将所画的按钮名称改为自己喜欢的名称,如“下一个单元格”,调整按钮的大小和位置。然后就可以试验效果了。
excel vba 弹出msg对话框以后我怎么要确认两次才能关闭?
单独看这一部分代码,应该会只执行一次。除非你另外有worksheet_selectionchange事件的代码,同时在selectionchange事件中改写了某一个或几个单元格的内容,再次触发worksheet_change事件。如果是以上原因,可以在worksheet_change事件中增加一句判断代码如下 if target.address="$A$1" then'如果需要监控的单元格...
VBA如果执行超链接修改内容,则停止change单元格修改事件?
在你的执行超链接事件中首、尾加入下面的代码试试看效果如何:Private Sub Worksheet_FollowHyperlink(ByVal Target As Hyperlink) Application.EnableEvents = False '禁止中断再次发生Application.ScreenUpdating = False '禁止屏幕刷新 ………' 你的代码内容 Application.ScreenUpdating = True '恢复屏...
EXCEL中,自动记录指定单元格修改的次数
启用迭代计算(03:工具,选项,重新计算,勾选迭代计算 ;07及以上:左上角office按钮,excel选项,公式,勾选迭代计算 ,最多迭代次数改为1,u1输入公式=if(cell("address")="$d$"&row(),u1+1,u1),回车,下拉,则d列编辑一次,u列就相应加1,但有个使用前提,在先有其他文件打开的情况下不...
EXCEL的问题
EXCEL给每个单元格都有一个默认的名字,其命名规则是列标加横标,例如D3表示第四列、第三行的单元格。如果要将某单元格重新命名,只要用鼠标单击某单元格,在表的左上角就会看到它当前的名字,再用鼠标选中名字,就可以输入一个新的名字了。 (2)、去掉默认的表格线(网线) 单击“工具”菜单中的“选项”,再单击...