Makro Übernahme aus Excel
Verfasst: Mo 5. Mär 2018, 06:35
Hallo zusammen, ich versuche meine Excel-Dateien in Calc zu übernehmen. Bin jetzt bei einem größeren Makro auf ein Problem gestoßen, das ich bisher nicht lösen kann. In dem Makto sind mehrere "Sort" Anweisungen. Bei jeder dieser bricht die Ausführung mit "Basic-Laufzeitfehler '423' Sort" ab. Wenn ich die Zeilen mit der Sort-Anweisung als Bemerkung kennzeichne, läuft die Ausführung natürlich weiter.
Nachfolgend zeige ich mal diesen Teil des Makros. Kann mir jemand helfen die für Calc richtige Schreibweise zu finden.
Danke
Nachfolgend das importierte Makro, die fehlerauslösenden Zeilen sind fett dargestellt. Was hier passiert ist - Aus den Zellen N1:N6 wird nur der Inhalt nach B4:B9 kopiert und anschließend wird B4:B9 aufsteigend sortiert:
Rem Attribute VBA_ModuleType=VBADocumentModule
Option VBASupport 1
Sub berechnen()
Range("Kathi").Select
ActiveCell.FormulaR1C1 = "0"
Do Until [Doppelt] = 6
Calculate
Loop
Range("N1:N6").Select
Selection.Copy
Range("B4:B9").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
Application.CutCopyMode = False
ActiveWorkbook.Worksheets("Lotto").Sort.SortFields.Clear
ActiveWorkbook.Worksheets("Lotto").Sort.SortFields.Add Key:=Range("B4"), _
SortOn:=xlSortOnValues, Order:=xlAscending, DataOption:=xlSortNormal
With ActiveWorkbook.Worksheets("Lotto").Sort
.SetRange Range("B4:B9")
.Header = xlNo
.MatchCase = False
.Orientation = xlTopToBottom
.SortMethod = xlPinYin
.Apply
End With
Application.Wait Now + TimeSerial(0, 0, 0.4173)
Do Until [Doppelt] = 6
Calculate
Loop
……………… Makro geht hier weiter
Nachfolgend zeige ich mal diesen Teil des Makros. Kann mir jemand helfen die für Calc richtige Schreibweise zu finden.
Danke
Nachfolgend das importierte Makro, die fehlerauslösenden Zeilen sind fett dargestellt. Was hier passiert ist - Aus den Zellen N1:N6 wird nur der Inhalt nach B4:B9 kopiert und anschließend wird B4:B9 aufsteigend sortiert:
Rem Attribute VBA_ModuleType=VBADocumentModule
Option VBASupport 1
Sub berechnen()
Range("Kathi").Select
ActiveCell.FormulaR1C1 = "0"
Do Until [Doppelt] = 6
Calculate
Loop
Range("N1:N6").Select
Selection.Copy
Range("B4:B9").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
Application.CutCopyMode = False
ActiveWorkbook.Worksheets("Lotto").Sort.SortFields.Clear
ActiveWorkbook.Worksheets("Lotto").Sort.SortFields.Add Key:=Range("B4"), _
SortOn:=xlSortOnValues, Order:=xlAscending, DataOption:=xlSortNormal
With ActiveWorkbook.Worksheets("Lotto").Sort
.SetRange Range("B4:B9")
.Header = xlNo
.MatchCase = False
.Orientation = xlTopToBottom
.SortMethod = xlPinYin
.Apply
End With
Application.Wait Now + TimeSerial(0, 0, 0.4173)
Do Until [Doppelt] = 6
Calculate
Loop
……………… Makro geht hier weiter