BITTE helfen Sie uns HEUTE mit einer SPENDE
Helfen Sie das LibreOffice Forum zu erhalten!

❤️ DANKE >><< DANKE ❤️

> KEINE WERBUNG FÜR REGISTRIERTE BENUTZER!<
Ihre Spende wird für die Deckung der laufenden Kosten sowie den Erhalt und Ausbau 🌱 des LibreOffice Forums verwendet.
🤗 Als Dankeschön werden Sie im Forum als LO-SUPPORTER gekennzeichnet. 🤗

Makro Übernahme aus Excel

CALC ist die Tabellenkalkulation, die Sie immer wollten.
Antworten
Irma
Beiträge: 4
Registriert: So 4. Mär 2018, 14:03

Makro Übernahme aus Excel

Beitrag von Irma » 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

mikele
Beiträge: 1642
Registriert: Mo 1. Aug 2011, 20:51

Re: Makro Übernahme aus Excel

Beitrag von mikele » Di 6. Mär 2018, 20:11

Hallo,
zunächst wäre die Frage im Unterforum "LibreOffice Programmierung" besser aufgehoben.
Excelmakros zu übernehmen ist nicht trivial, da VBA nur "rudimentär" übernommen wird (genauer kann ich nicht beurteilen, was geht und was nicht).
Kann mir jemand helfen die für Calc richtige Schreibweise zu finden.
Die Schreibweise ist es nur eingeschränkt, denn die Herangehensweise ist unter LO-Basic teilweise grundverschieden. Hier http://www.dannenhoefer.de/faqstarbasic ... ieren.html findest du im Prinzip die notwendigen Informationen. Im Prinzip deshalb, weil du dich damit von VBA löst und es sinnvoller wäre, dann auch den Rest des Makros umzuschreiben.
Gruß,
mikele

Irma
Beiträge: 4
Registriert: So 4. Mär 2018, 14:03

Re: Makro Übernahme aus Excel

Beitrag von Irma » Mi 7. Mär 2018, 07:09

Danke,
habe inzwischen festgestellt, dass ich bei einem Umstellung von MS zu LO 647 Word-Dokumente und 78 Excel-Dateien ändern muss, und dabei jeweils mich in die Formeln und Macros von LO einarbeiten muss. Manche Word-Funktionen aus MS scheinen mir überhaupt nicht abbildbar zu sein.
Werde bei MS bleiben.

An alle, die das LibreOffice-Forum nutzen:


Bitte beteiligen Sie sich mit 7 Euro pro Monat und helfen uns bei unserem Budget für das Jahr 2024.
Einfach per Kreditkarte oder PayPal.
Als Dankeschön werden Sie im Forum als LO-SUPPORTER gekennzeichnet.

❤️ Vielen lieben Dank für Ihre Unterstützung ❤️

Antworten