tagCANDY CGI VBレスキュー(花ちゃん)の Visual Basic 6.0用 掲示板
VBレスキュー(花ちゃん)の Visual Basic 6.0用 掲示板
[ツリー表示へ]  [ワード検索]  [Home]

タイトル VB6でEXCELのソート
投稿日: 2009/11/26(Thu) 21:36
投稿者困った人
VB6でEXCELオブジェクトを使用して一旦できたファイルの整形を
おこなっております。
その際にソートもいれようと思ったのですが、EXCELオブジェクトで
どのように作っていいかわからなかったので、あるEXCELで
マクロの記録を使ってソートのマクロを記録で作り以下のように
(下記の)START,ENDのところのようににコピペしたところ、1回目はうまく
いきますが、2回目以降はCellsメソッドは失敗しました。
というエラーがでます。
このエラーをおこさずに何度でもリトライできる方法を教えてください。
目的は、簡単に3,4,5列目を簡単にソートしたいだけです。2行目から。

環境 VB6(SP6)
OS WIN XP
備考 参照設定 EXCEL 11object liblaly
<以下PG>

Private Function SetExcelLayout_umpn() As Boolean
Dim objExcel        As Object
Dim objBook         As Object
    On Error GoTo Err_SetExcelLayout_umpn
    SetExcelLayout_umpn = False

    'Excelを起動
    Set objExcel = CreateObject("Excel.Application")
    Set objBook = objExcel.Workbooks.Open(txtExcelPath.Text)
    With objBook.Sheets(objBook.Sheets(1).Name)
        '列幅の設定
        .Columns("A:D").ColumnWidth = 8.38
    End With
'----START
    Cells.Select
    Selection.Sort Key1:=Range("C2"), Order1:=xlAscending, Key2:=Range("D2") _
        , Order2:=xlAscending, Key3:=Range("G2"), Order3:=xlAscending, Header:= _
        xlGuess, OrderCustom:=1, MatchCase:=False, Orientation:=xlTopToBottom, _
        SortMethod:=xlPinYin, DataOption1:=xlSortTextAsNumbers, DataOption2:= _
        xlSortTextAsNumbers, DataOption3:=xlSortNormal
    objBook.Save
'----END
Err_SetExcelLayout_umpn:
'略
End Function

- 関連一覧ツリー をクリックするとツリー全体を一括表示します)

古いスレッドにレスはつけられません。