VB问题删除指定excel行

在http://zhidao.baidu.com/question/580792598.html?quesup2&oldq=1里你的回答确实有效,非常感谢!不过还有两个问... http://zhidao.baidu.com/question/580792598.html?quesup2&oldq=1里你的回答确实有效,非常感谢!不过还有两个问题,一是没有找到最新的xls文件,二是在删除指定行后并没有自动保存并退出excel,能否解决此问题?再追加50分,谢谢 展开
 我来答
149005501
2013-08-14 · TA获得超过8.6万个赞
知道顶级答主
回答量:7.9万
采纳率:90%
帮助的人:1.3亿
展开全部

'菜单“工程/引用”,勾选Microsoft Excel 11库,必须的

Private Sub Command1_Click()

Dim xlApp As Excel.Application
Dim xlBook As Excel.Workbook
Dim xlSheet As Excel.Worksheet
On Error Resume Next
Set xlApp = GetObject(, "Excel.Application")
If Err.Number <> 0 Then Set xlApp = CreateObject("Excel.Application")
On Error GoTo prcERR
Set xlBook = xlApp.Workbooks.Open(App.Path & "\test.xls")  '打开你的EXCEL文件
Set xlSheet = xlBook.Worksheets(1)'第一个表格
xlSheet.Application.Visible = True '设置Excel 可见
  xlSheet.Rows("1:1").Delete Shift:=xlUp'假如要删除第1行。删除第2行就是"2:2",删除1-3行就是"1:3"
Set xlSheet = Nothing
Set xlBook = Nothing
Set xlApp = Nothing
Exit Sub
prcERR:
 Debug.Print Err.Number & ":" & Err.Description
End Sub
追问
那怎么自动保存修改后的excel呢?
追答
Private Sub Command1_Click()
 
Dim xlApp As Excel.Application
Dim xlBook As Excel.Workbook
Dim xlSheet As Excel.Worksheet
On Error Resume Next
Set xlApp = GetObject(, "Excel.Application")
If Err.Number <> 0 Then Set xlApp = CreateObject("Excel.Application")
On Error GoTo prcERR
Set xlBook = xlApp.Workbooks.Open(App.Path & "\test.xls")  '打开你的EXCEL文件
Set xlSheet = xlBook.Worksheets(1)'第一个表格
xlSheet.Application.Visible = True '设置Excel 可见
  xlSheet.Rows("1:1").Delete Shift:=xlUp'假如要删除第1行。删除第2行就是"2:2",删除1-3行就是"1:3"
 
xlBook.DisplayAlerts = False     '不显示警告信息
xlBook.Close True  '先保存修改再关闭工作簿
xlBook.Quit   '关闭Excel 

Set xlSheet = Nothing
Set xlBook = Nothing
Set xlApp = Nothing
Exit Sub
prcERR:
 Debug.Print Err.Number & ":" & Err.Description
End Sub
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式