2010-01-18 2 views
0

Я пытаюсь получить макрос конвертировать из VBA в vb.net, и я получаю ошибку типа несоответствия и не могу понять это. Я надеюсь, что кто-то здесь сможет мне помочь.VB.net Excel сортировка

Это код.

Sub SortRawData() 
    Dim oSheet As Excel.Worksheet 
    Dim oRange As Excel.Range 


    Try 
     oSheet = SetActiveSheet(mLocalDocument, "Sheet 1") 
     oRange = mApplication.ActiveSheet.UsedRange 


     oRange.Sort(Key1:=oRange("J2"), Order1:=Excel.XlSortOrder.xlAscending, _ 
      Header:=Excel.XlYesNoGuess.xlYes, OrderCustom:=1, MatchCase:=False, _ 
      Orientation:=Excel.XlSortOrientation.xlSortColumns, _ 
      DataOption1:=Excel.XlSortDataOption.xlSortNormal, _ 
      DataOption2:=Excel.XlSortDataOption.xlSortNormal, _ 
      DataOption3:=Excel.XlSortDataOption.xlSortNormal) 


      Catch ex As Exception 
     ErrorHandler.HandleError(ex.Message, ex.Source, ex.StackTrace) 

    End Try 


End Sub 

Это код из макроса

Sub SortRawData(ByRef poRange As Range) 

Set poRange = Application.ActiveSheet.UsedRange 


poRange.Sort Key1:=Range("J2"), Order1:=xlAscending _ 
, Header:=xlYes, OrderCustom:=1, MatchCase:=False, Orientation:= _ 
xlTopToBottom, DataOption1:=xlSortNormal, DataOption2:=xlSortNormal, _ 
DataOption3:=xlSortNormal 


poRange.Sort Key1:=Range("D2"), Order1:=xlAscending, _ 
        Key2:=Range("H2"), Order2:=xlAscending, _ 
        Key3:=Range("L2"), Order3:=xlAscending, _ 
        Header:=xlYes, OrderCustom:=1, MatchCase:=False, Orientation:= _ 
        xlTopToBottom, DataOption1:=xlSortNormal, DataOption2:=xlSortNormal, _ 
    DataOption3:=xlSortNormal 


End Sub 

Любая помощь будет оценена.

Спасибо!

+2

На какой линии, вы получите ошибку – shahkalpesh

+0

I я получаю ошибку несоответствия типа на oRange.Sort (Order1: = Excel.XlSortOrder.xlAscending, _ Key1: = oRange ("J2"), _ Заголовок: = Excel.XlYesNoGuess.xlYes, MatchCase: = False, _ Ориентация: = Excel.XlSortOrientation.xlSortColumns, _ DataOption1: = Excel.XlSortDataOption.xlSortNormal, _ DataOption2: = Excel.XlSortDataOption.xlSortNormal, _ DataOption3: = Excel.XlSortDataOption.xlSo rtNormal) – Lora

ответ

1

Простое изменение первой линии, как это: oRange.Sort (Заказ1: = Excel.XlSortOrder.xlAscending, Key1: = ОРАНЖЕВЫЙ ("J2") _

+0

Спасибо, я, наконец, получил его на работу. Вот мой результат: oRange.Sort (Key1: = ОРАНЖЕВЫЙ (2, 9), Заказ1: = Excel.XlSortOrder.xlAscending, _ Заголовок: = Excel.XlYesNoGuess.xlYes, MatchCase: = False, _ Ориентация: = Excel.XlSortOrientation.xlSortColumns, _ DataOption1: = Excel.XlSortDataOption.xlSortNormal, _ DataOption2: = Excel.XlSortDataOption.xlSortNormal, _ DataOption3: = Excel.XlSortDataOption.xlSortNormal) – Lora

Смежные вопросы