【发布时间】:2014-01-08 09:43:37
【问题描述】:
我必须将特定列从 workbook1 中的一个工作表复制并粘贴到同一 workbook1 中的另一个工作表,或者它也可能是 workbook2 .我的意思是我想动态选择源工作簿和工作表以及目标工作簿和工作表。我必须能够动态选择要复制的列。
我试过这个:
Dim thisWb As Workbook
Dim destWb As String
Dim destSheet As Worksheet, FromSheet As Worksheet
Dim FromBook As String
Set thisWb = ThisWorkbook
Set destSheet = thisWb.ActiveSheet
FromBook = Application.GetOpenFilename
If FromBook = "False" Then Exit Sub
destWb = Application.GetOpenFilename
Workbooks.Open Filename:=destWb
Set FromSheet = destWb.Worksheets("Sheet1")
Set sourcecolumn = Workbooks("FromBook").Worksheets("sheet1").Columns("A")
Set targetcolumn = Workbooks("destWb").Worksheets("sheet2").Columns("B")
sourcecolumn.Copy Destination:=targetcolumn
存在“无效说明符”编译时错误,destwb 在此行突出显示:
设置 FromSheet = destwb.Worksheets("Sheet1")
我已经尝试使用静态工作簿、工作表、列名来执行此操作,并且它有效。
Dim sourcecolumn As Range, targetcolumn As Range
Set sourcecolumn = Workbooks("Book1.xlsm").Worksheets("sheet1").Columns("A")
Set targetcolumn = Workbooks("Book1.xlsm").Worksheets("sheet2").Columns("B")
sourcecolumn.Copy Destination:=targetcolumn
问题是我想动态选择工作簿、工作表和列...
【问题讨论】:
-
请展示您的尝试。如果没有看到您的代码,很难说出您到底想要实现什么。
-
感谢您的回复......让我清楚......我想将工作簿中的工作表中的列复制到其他工作簿中的某个工作表中。所以我想选择工作簿,工作表以及我想动态复制和粘贴的列...任何帮助将不胜感激
-
好的,你已经尝试过这样做了。有什么具体问题吗?不要强迫我们猜测。
-
当我运行宏时出现编译时错误,并且 destwb 在“Set FromSheet=destwb.Worksheets("Sheet1") 中突出显示......它说说明符无效
-
然后写在你的问题中。这次为你做了。