以文本方式查看主题

-  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=168854)

--  作者:tongke
--  发布时间:2021/5/24 17:44:00
--  怎么用狐表给现有的Excel表排序
现有的excel,想用狐表操作排序
--  作者:有点蓝
--  发布时间:2021/5/24 20:38:00
--  
参考:https://docs.microsoft.com/zh-cn/office/vba/api/excel.range.sort?redirectedfrom=MSDN

Dim App As New MSExcel.Application
Dim Wb As MSExcel.WorkBook = App.WorkBooks.Open("D:\\12.xls")
Dim Ws As MSExcel.WorkSheet = Wb.WorkSheets(1)
Dim Rg As MSExcel.Range = Ws.Columns("A:D")
Rg.sort(key1:=Ws.Range("B2"),header:= MSExcel.XlYesNoGuess.xlYes,Orientation:= MSExcel.XlSortOrientation.xlSortColumns)
App.Visible = True

--  作者:tongke
--  发布时间:2021/5/25 8:13:00
--  
那么怎么样把表中第二行作为标题行,不参与排序呢?
--  作者:tongke
--  发布时间:2021/5/25 8:13:00
--  

图片点击可在新窗口打开查看此主题相关图片如下:snipaste_2021-05-25_08-11-11.png
图片点击可在新窗口打开查看

--  作者:有点蓝
--  发布时间:2021/5/25 8:40:00
--  
Rg.sort(key1:=Ws.Range("B3"),header:= MSExcel.XlYesNoGuess.xlYes,Orientation:= MSExcel.XlSortOrientation.xlSortColumns)
--  作者:tongke
--  发布时间:2021/5/25 8:51:00
--  不行啊

图片点击可在新窗口打开查看此主题相关图片如下:snipaste_2021-05-25_08-50-15.png
图片点击可在新窗口打开查看
[此贴子已经被作者于2021/5/25 8:51:30编辑过]

--  作者:tongke
--  发布时间:2021/5/25 8:54:00
--  
Dim dlg As New OpenFileDialog \'定义一个新的OpenFileDialog
dlg.Filter= "excel文件|*.xlsx" \'设置筛选器
If dlg.ShowDialog = DialogResult.Ok Then \'如果用户单击了确定按钮
    Dim App As New MSExcel.Application
    Dim Wb As MSExcel.WorkBook = App.WorkBooks.Open(dlg.filename)
    Dim Ws As MSExcel.WorkSheet = Wb.WorkSheets(1)
    Dim Rg As MSExcel.Range = Ws.Columns("A:P")
    Rg.sort(key1:=Ws.Range("G3"),header:= MSExcel.XlYesNoGuess.xlyes,Orientation:= MSExcel.XlSortOrientation.xlSortColumns)
    wb.save
    wb.close
End If