VBA Sub或Function未定义

时间:2015-06-24 13:11:44

标签: excel vba excel-vba

我正在编写代码,而且我对此有点新鲜。 我的宏代码不断出现编译错误,编译错误,未定义子或函数。我试着用vba菜单<工具<参考,但我无法点击它。有什么建议?下面是我试图运行的宏代码

Sub Update()
'
'

Application.ScreenUpdating = True

Dim copysheet As Worksheet
Dim pastesheet As Worksheet

Set copysheet = Worksheets("Daily Sheet")
Set pastehseet = Worksheets("Raw Data")

copysheet.Range("G5").Copy
Sheet("Raw Data").Range("A" & Rows.Count).End(xlUp).Offset(1).PasteSpecial _
Paste:=xlPasteValue, Operation:=xlNone, Skipblanks_:=False, Transpose:=False

copysheet.Range("G7").Copy
Sheet("Raw Data").Range("B" & Rows.Count).End(xlUp).Offset(1).PasteSpecial _
Paste:=xlPasteValue, Operation:=xlNone, Skipblanks_:=False, Transpose:=False

copysheet.Range("G14").Copy
Sheet("Raw Data").Range("C" & Rows.Count).End(xlUp).Offset(1).PasteSpecial _
Paste:=xlPasteValue, Operation:=xlNone, Skipblanks_:=False, Transpose:=False

copysheet.Range("G9").Copy
Sheet("Raw Data").Range("D" & Rows.Count).End(xlUp).Offset(1).PasteSpecial _
Paste:=xlPasteValue, Operation:=xlNone, Skipblanks_:=False, Transpose:=False

copysheet.Range("G11").Copy
Sheet("Raw Data").Range("G" & Rows.Count).End(xlUp).Offset(1).PasteSpecial _
Paste:=xlPasteValue, Operation:=xlNone, Skipblanks_:=False, Transpose:=False

copysheet.Range("G13").Copy
Sheet("Raw Data").Range("H" & Rows.Count).End(xlUp).Offset(1).PasteSpecial _
Paste:=xlPasteValue, Operation:=xlNone, Skipblanks_:=False, Transpose:=False


Sheets("Daily Sheet").Range("G5:G14").Select.ClearContents
Sheets("Daily Sheet").Range("K9").Select


End Sub

1 个答案:

答案 0 :(得分:1)

Dim copysheet As Worksheet
Dim pastesheet As Worksheet

Set copysheet = Worksheets("Daily Sheet")
Set pastesheet = Worksheets("Raw Data")

copysheet.Range("G5").Copy
Sheets("Raw Data").Range("A" & Rows.Count).End(xlUp).offset(1).PasteSpecial Paste:=xlPasteValues

copysheet.Range("G7").Copy
Sheets("Raw Data").Range("B" & Rows.Count).End(xlUp).offset(1).PasteSpecial Paste:=xlPasteValues

copysheet.Range("G14").Copy
Sheets("Raw Data").Range("C" & Rows.Count).End(xlUp).offset(1).PasteSpecial Paste:=xlPasteValues

copysheet.Range("G9").Copy
Sheets("Raw Data").Range("D" & Rows.Count).End(xlUp).offset(1).PasteSpecial Paste:=xlPasteValues

copysheet.Range("G11").Copy
Sheets("Raw Data").Range("G" & Rows.Count).End(xlUp).offset(1).PasteSpecial Paste:=xlPasteValues

copysheet.Range("G13").Copy
Sheets("Raw Data").Range("H" & Rows.Count).End(xlUp).offset(1).PasteSpecial Paste:=xlPasteValues


Sheets("Daily Sheet").Range("G5:G14").clear
Worksheets("Daily Sheet").Range("K9").Select

似乎可以做你想做的事。

我发现的问题是:

使用工作表 - 而不是工作表(解释了你得到的错误,因为它的思想表是另一个宏或类似的

同样,你错过了粘贴特价中xlvalues结尾的x off。

最后,您需要在最后使用Worksheets(ws.name)进行选择。

希望这有帮助