Vba 从工作表复制数据的Excel宏将生成查询定义而不是数据
正如标题所说,我试图将数据从特定文件复制到工作簿中的新选项卡中,但宏只复制(我假设)用于检索数据本身的查询定义 我已经删除了与外部源的任何连接,但这并没有解决问题。以下是粘贴结果的屏幕截图: 下面是我用来粘贴的代码部分:Vba 从工作表复制数据的Excel宏将生成查询定义而不是数据,vba,excel,copy-paste,Vba,Excel,Copy Paste,正如标题所说,我试图将数据从特定文件复制到工作簿中的新选项卡中,但宏只复制(我假设)用于检索数据本身的查询定义 我已经删除了与外部源的任何连接,但这并没有解决问题。以下是粘贴结果的屏幕截图: 下面是我用来粘贴的代码部分: Set DestWS = wkbDest.Sheets(Curr_Input_File) If Len(wkbDest.Sheets(Curr_Input_File).Range("A1").Value) > 0 Then wkbDest.Sheets(Curr
Set DestWS = wkbDest.Sheets(Curr_Input_File)
If Len(wkbDest.Sheets(Curr_Input_File).Range("A1").Value) > 0 Then
wkbDest.Sheets(Curr_Input_File).UsedRange.ClearContents
SheetToCopy.UsedRange.Copy
DestWS.Range("A1").PasteSpecial xlPasteAll
Application.CutCopyMode = False
Else
SheetToCopy.UsedRange.Copy
DestWS.Range("A1").PasteSpecial xlPasteAll
Application.CutCopyMode = False
End If
我知道复制/粘贴循环是有效的,因为所有其他文件都是复制/粘贴的,没有问题。但是,仅针对此文件,我遇到了如上所述的问题。如何将其编码为粘贴实际数据而不是查询?FWIW,我在源数据文件的任何地方都看不到查询。好的,答案很明显,但我找到了答案。有一个包含SQL查询定义的隐藏工作表。默认情况下,我的复制代码只是复制工作簿中的第一个选项卡
SheetToCopy=wkbSource.Sheets(1)
,因此它捕获了SQL查询
我甚至不知道你可以隐藏床单。通过转到“主页”选项卡,在“单元格”部分下,单击“格式-->隐藏和取消隐藏-->取消隐藏工作表”即可完成此操作。必须有一个工作表包含该查询。您是否已使用调试器?您还可以通过右键单击任何工作表的选项卡,然后选择“取消隐藏…”来取消隐藏工作表。从那里,它将弹出一个菜单的所有工作表是隐藏的,并给你选择“取消隐藏”