我有一个带有宏的启用宏的工作簿,然后我使用Visual Studio创建了一个表单,我使用它:
Private Sub GenerateBtn_Click(sender As Object, e As EventArgs) Handles GenerateBtn.Click
APP.Run("'CAT-prueba-de-macros.xlsm'!CrearListaCarreras")
End Sub
当我在Excel中运行宏时它可以正常工作,但是当我使用APP.Run
时,会出现一个Excel错误
"错误1004:复制区域和粘贴区域的大小和形状不同"
在这部分宏中:
Range("A1").Select
Range(Selection, Selection.End(xlDown)).Select
Selection.Copy
Range("B1").Select
**Selection.PasteSpecial Paste:=xlPasteAll, Operation:=xlNone, SkipBlanks:= _
False, Transpose:=True**
Columns("A:A").Select
Selection.Delete Shift:=xlToLeft
答案 0 :(得分:0)
我认为您的问题与在您的VBA中使用Select
并使用Range
而未指定其工作表有关,我建议您使用以下代码:
Dim ws As Worksheet
Set ws = ActiveSheet
ws.Range("A1", ws.Range("A1").End(xlDown)).Copy
ws.Range("B1").PasteSpecial Transpose:=True
ws.Range("A:A").Delete Shift:=xlToLeft