首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > VBA >

VBA:Excel在进行选择性粘贴的时候,为什么还是带有格式?解决办法

2012-03-09 
VBA:Excel在进行选择性粘贴的时候,为什么还是带有格式?例子如下:两个xls,一个写了部分VBA,导入另一个xls,

VBA:Excel在进行选择性粘贴的时候,为什么还是带有格式?
例子如下:
两个xls,一个写了部分VBA,导入另一个xls,将第二个xls中的一个sheet内的部分单元格内容,粘贴到第一个xls制定单元格内,在进行粘贴时:是只针对“值”进行粘贴,但是粘贴过来还是存在格式,为什么?

代码如下;
第一个xls:
'导入第二个xls,并进行选择性粘贴
Dim myApp As New Application, wkSht As Worksheet

sFileName = Application.GetOpenFilename
If sFileName = "False" Then
  GoTo endSub
End If
Set wkSht = myApp.Workbooks.Open(sFileName).Sheets(1)

wkSht.Range("A4:B" & cycle).Copy
Worksheets("第一个文件").Range("A2").PasteSpecial Paste:=xlPasteValues

为什么这样做粘贴的内容还是存在格式?请问如何解决?

[解决办法]

VB code
Set wkSht = myApp.Workbooks.Open(sFileName).Sheets(1)wkSht.Range("A4:B" & cycle).Copy
[解决办法]
探讨
我试了一下,还是有问题:
1、采取上面代码的方式,运行时提示“类Range的Select方法无效”;

2、在偶然的一次试成功后,得到的结果却是,复制的是按照图片的方式引用的;

请问各位,是什么原因?还有其他解决办法么?

热点排行