类worksheet的paste方法无效?VBA 怎么修改啊

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了类worksheet的paste方法无效?VBA 怎么修改啊相关的知识,希望对你有一定的参考价值。

Private Sub CommandButton1_Click()
If OptionButton1.Value = True Then
Sheets("打印教材清单").Cells(1, 1).Value = "部门"
Sheets("教材清单").Select
FinalRow = Range("D65536").End(xlUp).Row
Selection.AutoFilter Field:=1, Criteria1:=ComboBox2.Text
Range("A3", Range("D65536").End(xlUp)).Select
Selection.Copy
Selection.AutoFilter Field:=1
Sheets("打印教材清单").Select
Cells(7, 1).Select
ActiveSheet.Paste

报错:类worksheet的paste方法无效

ActiveSheet.paste改成
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
以上是数值性黏贴的代码。若复制区中的公式也要一并黏贴,则改成
Range("A1").Select
Selection.PasteSpecial Paste:=xlPasteAll, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False追问

提示PasteSpecial方法无效

追答

把VBA文件传过来,测试吧,cathy.ling@tpv-tech.com ; 或者, 你将
Cells(7, 1).Select ActiveSheet.Paste 改成
Range(7,1).select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
以上是选择性-》数值性黏贴的代码.若是完全黏贴:
Range(7, 1).Select
ActiveSheet.Paste

参考技术A Private Sub CommandButton1_Click()
If OptionButton1.Value = True Then
Sheets("打印教材清单").Cells(1, 1).Value = "部门"
Sheets("教材清单").Select
FinalRow = Range("D65536").End(xlUp).Row
Selection.AutoFilter Field:=1, Criteria1:=ComboBox2.Text
Range("A3", Range("D65536").End(xlUp)).Select
Selection.AutoFilter Field:=1
Selection.Copy Sheets("打印教材清单").[a7]

类range的select方法无效

问题:

导出excel时,提示“类range的select方法无效”。


解决方法:

Range.Select();方法前添加this.worksheet.Activate();

以上是关于类worksheet的paste方法无效?VBA 怎么修改啊的主要内容,如果未能解决你的问题,请参考以下文章

excel vba执行到 Worksheets(1).Cells(dic(s_v), 10).Paste 说对象不支持该属性或方法,怎么回事

VBA学习笔记之粘贴方法

excel将一个工作表根据条件拆分成多个工作簿,运行后,跳出类worksheet的delete方法无效

VBA获取错误Worksheet类的活动方法失败

VBA 方法range作用于对象_worksheet时失败

类range的select方法无效