如何使用VBA选中工作表中不带公式的单元格,谢谢

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何使用VBA选中工作表中不带公式的单元格,谢谢相关的知识,希望对你有一定的参考价值。

你是指不带公式,但又不为空的单元格吗?如果是的话,录制宏——CTRL+G——定位条件——常量——确定。得到的宏处理一下就是了 参考技术A 楼主你好,我给你想了个有效的法首先全选,然后选择性粘贴,只粘贴数值,这样就能在不改变任何东西的情况下去掉公式,只留下数值了,楼主快去试一试吧Cells.Select'全选Selection.Copy'复制Selection.PasteSpecialPaste:=xlPasteValues'选择性粘贴,只粘贴数值,去掉公式,不破坏格式ActiveWorkbook.SaveAsFilename:="C:\Noformula.xls"这个只是基本步骤当然了,如果只这样的话,那么原来表格里面的公式也没了,楼主根据自己的具体情况稍微一修改就行了楼主,写完之后我又看了看,觉得这样不能去掉宏,只能去掉公式,于是我又写了一段,这段的思路如下:新建一个工作簿,然后选择性的把数据粘贴过去,然后保存,这样的话就可以在不破坏任何东西的情况下去掉公式和宏(vba代码)了代码如下:Cells.Select'全选Selection.Copy'复制DimxlAppAsExcel.Application'创建一个新的excelDimxlBookAsExcel.WorkbookDimxlSheet1AsExcel.WorksheetSetxlApp=CreateObject("Excel.Application")'创建EXCEL对象SetxlBook=xlApp.Workbooks.AddSetxlSheet1=xlBook.Worksheets("sheet1")'设置活动工作表xlApp.DisplayAlerts=False'关闭警告xlApp.Visible=True'设置EXCEL对象可见xlSheet1.Activate'激活新的excel工作表xlSheet1.Cells.PasteSpecialPaste:=xlPasteValues'选择性粘贴,只粘贴数值,去掉公式,不破坏格式xlBook.SaveAsFilename:="C:\Noformula.xls"'楼主,这个保存路径名称你自己改msgbox"文件保存为C:\Noformula.xls"xlApp.DisplayAlerts=TruexlBook.Close'关闭工作表xlApp.Quit'退出excel程序楼主,我写得很辛苦哦,我女朋友给我聊qq我都没理她 参考技术B 你可以录制个宏定位下看看

vba在单元格中生成的公式如何变成文本值

用vba编写的公式如何变成数值,而且是文本的数值
用这句话可以变成值,但是数值,如果数值前面是0的话,0就被去掉了,如何处理
range("a1:a10")=range("a1:a10").value

在生成的数值前加一个单引号就可以成为文本了,比如,如果你要让00010正常显示在Cells(1,1)中,那么你可以 这样 Cells(1,1)=“’” & "00010" 参考技术A 设置单元格格式为文本呀

以上是关于如何使用VBA选中工作表中不带公式的单元格,谢谢的主要内容,如果未能解决你的问题,请参考以下文章

vba在单元格中生成的公式如何变成文本值

如何用VBA语句让EXCEL里某单元格不能被输入或更改?(比如说要让A1单元格不被输入)请诸路VBA高手赐教,谢谢!!

利用VBA实现多个工作表指定单元格公式变为数值?

VBA 中怎么只保护指定的单元格或者列

VBA将单元格内容分配为公式而不是其结果

Excel VBA 评估另一张工作表中的公式