Live-Forum - Die aktuellen Beiträge
Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender

Forumthread: Umschreiben von Open Office Makro in Excel Makro

Umschreiben von Open Office Makro in Excel Makro
09.03.2015 08:26:46
Open
Hallo!
Ich habe folgenden VBA Code für ein Makro in Open Office, welches bestimmte Teile der Tabellen eines Excel Dokuments in bestimmte Teile der Tabellen eines anderen Dokuments kopieren soll.
Leider kann Excel das Makro so nicht ausführen, da unterschiede in der Programmiersprache bestehen (habe z.B statt thisComponent Workbook.Worksheets gefunden)
Könnt ihr mir Helfen den Befehl umzuschreiben?
Sub kopieren()
doc = thisComponent
Sheets = doc.Sheets
apath = Split(doc.Location, "/")
apath(UBound(apath)) = "Mappe1.ods"
quellpath = Join(apath, "/")
Formula = "='" & quellpaht & "'#"
For Each sheetname In Sheets.ElementNames
target = Sheets.getByName(sheetname).getCellRangeByName("A1:B4")
target.ArrayFormula = Formula & sheetname & ".B8:C11"
Next
End Sub

Anzeige

2
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Umschreiben von Open Office Makro in Excel Makro
09.03.2015 10:30:27
Open
Hallo!
Wenn Du in Excel von einer Zelle in die andere (in der selben Datei) kopieren möchtest ist das mit einer Zeile erledigt.
Sheets("Tabelle1").Range("B8:C11"). Copy Sheets ("Tabelle1").Range("A1:B4")
Aber erklär doch mal genauer was Du erreichen möchtest. Wenn ich den Code richtig interpretiere sollen da Formeln (Formula) in die Zellen geschrieben werden, von kopieren steht da nichts.
Gruß, René

Anzeige
AW: Umschreiben von Open Office Makro in Excel Makro
09.03.2015 10:40:36
Open
Hallo Max,
wenn ich das Makro richtig gelesen haben, dann möchtest du aus den Zellbereichen einer anderen Datei per Array-Formel die Werte in einen Zellbereich einlesen. Dabei sind in der aktiven Datei und in der Externen Datei Tabellen mit den gleichen Blattnamen vorhanden.
Das Excel-Makro unte Windows müßte dann etwa wie folgt aussehen. Ich kann aber nicht überblicken, ob "\" oder "/" als Trennzeichen im Pfad der Dateien eine Rolle spielen können. Ich hab das deshalb durch den allgemeinen Ausdruck Application.PathSeparator ersetzt.
Gruß
Franz
Sub kopieren()
Dim wkb As Workbook
Dim wks As Worksheet
Dim rngTarget As Range
Dim apath As Variant, quellpath As Variant
Dim Formula As String
'doc = thisComponent
Set wkb = ThisWorkbook 'oder evtl. ActiveWorkbook
'Sheets = doc.Sheets
'apath = Split(doc.Location, "/")
apath = Split(wkb.FullName, Application.PathSeparator)
apath(UBound(apath)) = "Mappe1.xlsx"
'quellpath = Join(apath, "/")
quellpath = Join(apath, Application.PathSeparator)
If Dir(Pathname:=quellpath) = "" Then
MsgBox "Quelldatei """ & quellpath & """ nicht gefunden"
Else
'Formula = "='" & quellpaht & "'#"
Formula = "='" & wkb.Path & Application.PathSeparator & "[Mappe1.xlsx]"
'For Each sheetname In Sheets.ElementNames
For Each wks In wkb.Worksheets
'target = Sheets.getByName(sheetname).getCellRangeByName("A1:B4")
Set rngTarget = wks.Range("A1:B4")
' target.ArrayFormula = Formula & sheetname & ".B8:C11"
rngTarget.FormulaArray = Formula & wks.Name & "'!$B$8:$C$11"
Next
End If
End Sub

Anzeige
;

Forumthreads zu verwandten Themen

Anzeige
Anzeige
Anzeige
Anzeige
Entdecke relevante Threads

Schau dir verwandte Threads basierend auf dem aktuellen Thema an

Alle relevanten Threads mit Inhaltsvorschau entdecken
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Entdecke mehr
Finde genau, was du suchst

Die erweiterte Suchfunktion hilft dir, gezielt die besten Antworten zu finden

Suche nach den besten Antworten
Unsere beliebtesten Threads

Entdecke unsere meistgeklickten Beiträge in der Google Suche

Top 100 Threads jetzt ansehen
Anzeige