通过VB.NET合并excel单元格,而不询问每个单元格何时都有值

通过VB.NET合并excel单元格,而不询问每个单元格何时都有值,vb.net,excel,vba,Vb.net,Excel,Vba,我有一个VB.NET网站,我正在excel文件中组织一些数据。 我需要合并excel中具有相同数据的单元格,但每次尝试此操作时,程序都会停止并显示此通知: 我不想看到它,我希望程序不经询问就继续进行。有可能吗,谢谢 如果手动执行此操作,并回答“确定”,则除左上角单元格中的数据外,所有数据都将丢失 为什么在合并之前不清除其他单元格?我假设您有类似的 Dim oXL As Excel.Application 在代码的某个地方。如果是这样的话,那么你所需要做的就是排队 oXL.DisplayAle

我有一个VB.NET网站,我正在excel文件中组织一些数据。 我需要合并excel中具有相同数据的单元格,但每次尝试此操作时,程序都会停止并显示此通知:


我不想看到它,我希望程序不经询问就继续进行。有可能吗,谢谢

如果手动执行此操作,并回答“确定”,则除左上角单元格中的数据外,所有数据都将丢失


为什么在合并之前不清除其他单元格?

我假设您有类似的

Dim oXL As Excel.Application
在代码的某个地方。如果是这样的话,那么你所需要做的就是排队

oXL.DisplayAlerts = false;
在您尝试合并之前,请将其设置为true afterwords以确保安全


如果没有,请发布一些代码,我将进一步帮助您。不过,这确实有效。我以前做过。

我不想每次都单击“确定”,因为excel文件维度可能很大。excel文件的内部是这样的:所以,我需要再次合并具有相同内容的单元格,为什么不:1)标识要合并的单元格。2) 清除除左上角单元格外所有单元格的内容。3) 合并单元格。您将得到相同的结果,但没有对话框。您也可以使用DisplayAlerts设置,这是提供的另一种解决方案,但这是一种全局设置,可能会抑制您确实需要的其他警报。只要您立即将其设置回true,它就不会抑制任何内容。在进行自动化时,出于多种原因,通常最好将DisplayAlerts设置为false,包括保存、关闭等。只要确保在每个会导致程序退出的情况下都将其设置为true。是的,但这有一种“错误恢复下一步”的臭味,我真的不想再看到这种情况。您应该只抑制预期的警报,而不是所有警报。因为在Excel中无法做到这一点,(我觉得)最好解决在代码中引发警报的条件。我的意见——可能不值得下载这条评论所花的带宽。啊,我想我知道问题所在。编辑答案。