Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/excel/24.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
将数据从web插入excel工作表-VBA_Vba_Excel - Fatal编程技术网

将数据从web插入excel工作表-VBA

将数据从web插入excel工作表-VBA,vba,excel,Vba,Excel,我需要将xls文件中的数据从web插入到当前打开的工作簿中。问题是,如果我多次运行此宏,它总是会创建新工作表。理想情况下,我想删除旧内容,并替换为同一页上的新内容。有可能吗?这是我的密码 Sub downloadData() Dim wkbMyWorkbook As Workbook Dim wkbWebWorkbook As Workbook Dim wksWebWorkSheet As Worksheet Dim currentDate As Date Set wkbMyWorkbook

我需要将xls文件中的数据从web插入到当前打开的工作簿中。问题是,如果我多次运行此宏,它总是会创建新工作表。理想情况下,我想删除旧内容,并替换为同一页上的新内容。有可能吗?这是我的密码

Sub downloadData()

Dim wkbMyWorkbook As Workbook
Dim wkbWebWorkbook As Workbook
Dim wksWebWorkSheet As Worksheet
Dim currentDate As Date

Set wkbMyWorkbook = ActiveWorkbook

currentDate = Date

Workbooks.Open ("https://www.somewebpage.com/file.xls")

Set wkbWebWorkbook = ActiveWorkbook
Set wksWebWorkSheet = ActiveSheet

wksWebWorkSheet.Copy After:=wkbMyWorkbook.Sheets(Sheets.Count)

wkbMyWorkbook.Activate
wkbWebWorkbook.Close

End Sub

假设从web转储的工作表始终是工作簿中的最后一张工作表,请使用此行:

Application.DisplayAlerts = False
wkbMyWorkbook.Worksheets(wkbMyWorkbook.Worksheets.Count).Delete
Application.DisplayAlerts = True

复制新工作表之前。

我收到错误,它在新工作簿中打开下载的文件:运行时错误“1004”工作表类的删除方法失败。@joe32-请立即重试。我完全合格objects@Scott霍尔茨曼请到@Scott Holtzman请到@Scott Holtzman请到我欠你这个结果。请发表这篇有用的参考文章作为答案。@MGae2M-我很欣赏你的观点,也看到了你的评论。我将保留删除的答案,因为有这么多来回的意见,我实际上提供的答案是不准确的问题。