以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.net/bbs/index.asp)
--  专家坐堂  (http://foxtable.net/bbs/list.asp?boardid=2)
----  [求助]如何删除Excel文件的指定列?  (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=119649)

--  作者:新福星
--  发布时间:2018/5/29 15:54:00
--  [求助]如何删除Excel文件的指定列?
如何删除Excel文件中指定的一列?
--  作者:有点甜
--  发布时间:2018/5/29 15:59:00
--  

Delete

删除单元格。在删除单元格时,可以设置单元格的移动方向(在删除某个单元格后,旁边的单元格会根据设置的单元格移动方向填补空缺)。如:

Dim App As New MSExcel.Application
Dim Wb As MSExcel.WorkBook = App.WorkBooks.Open("D:\\Report.xls")
Dim Ws As MSExcel.WorkSheet = Wb.WorkSheets(1)
Dim Rg As MSExcel.Range = Ws.Range("A10")\'以这个指定的单元格为基准
Rg.Delete(MSExcel.XlDirection.xlUp)  \'下面的单元格上移
App.Visible = True

利用Delete方法,同时结合EntireRow和EntireColumn属性,可删除整行和整列。如:

Dim App As New MSExcel.Application
Dim Wb As MSExcel.WorkBook = App.WorkBooks.Open("D:\\Report.xls")
Dim Ws As MSExcel.WorkSheet = Wb.WorkSheets(1)
Dim Rg As MSExcel.Range = Ws.Range("A10")\'以这个指定的单元格为基准
Rg.EntireColumn.Delete(MSExcel.XlDirection.xlToLeft)  \'右面的单元格左移
App.Visible = True

在删除多行或多列时,一样可以设置单元格的移动方向。如:

Dim App As New MSExcel.Application
Dim Wb As MSExcel.WorkBook = App.WorkBooks.Open("D:\\Report.xls")
Dim Ws As MSExcel.WorkSheet = Wb.WorkSheets(1)
Dim Rg As MSExcel.Range = Ws.Rows("1:3")\'选定多行
Rg.Delete(MSExcel.XlDirection.xlUp) \'下面的单元格上移
Rg = Ws.Columns("D:F")  \'选定多列
Rg.Delete(MSExcel.XlDirection.xlToLeft) \'右面的单元格左移
App.Visible = True

 

http://www.foxtable.com/webhelp/scr/2121.htm

 

 


--  作者:新福星
--  发布时间:2018/5/29 16:48:00
--  
Sheet.Rows.Insert(0) \'在最前面插入一行
这是插入一行。有没有类似 对应的Sheet.Rows.Delete(0) ? 或者Sheet.Cols.Delete(0)  这样的语句?
 
[此贴子已经被作者于2018/5/29 16:48:10编辑过]

--  作者:有点甜
--  发布时间:2018/5/29 17:26:00
--  

http://www.foxtable.com/webhelp/scr/1155.htm

 

http://www.foxtable.com/webhelp/scr/1157.htm

 

建议尽量用vba进行操作,更正规更符合你的要求。