• Apfeltalk ändert einen Teil seiner Allgemeinen Geschäftsbedingungen (AGB), das Löschen von Useraccounts betreffend.
    Näheres könnt Ihr hier nachlesen: AGB-Änderung
  • Seit Gutenbergs Zeiten haben sich nicht nur Bücher über die ganze Welt verbreitet, sondern Buchstaben und Wörter begleiten uns allumfassend. Selbst moderne Devices mit Sprachsteuerung und Super-KI kommen nicht ohne Buchstaben, Wörter oder Symbole aus. Nicht zuletzt darum ist das Thema das Monats Am Anfang war das Wort ---> Klick

[Excel] Makro von Windows

Beat Schmid

Erdapfel
Registriert
13.06.13
Beiträge
2
Hallo, ich habe da ein kleines Makro das in Excel für Windows läuft. Das sollte jetzt aber auch in Excel für Mac funktionieren. Wer kann mir da helfen?
Dieses Script erstellt Ordner von den Angaben in der ersten Spalte der Excel Tabelle. Und zwar in dem Pfad, der bei Windows so wie in der dritten Zeile geschrieben ist.
Hier mal den code:


Option Explicit
' anpassen !!!MIT abschließendem Backslash "\"
Const strPfad1 As String = "C:\Ordner\Montag\"


Private Declare Function MakeSureDirectoryPathExists _
Lib "imagehlp.dll" (ByVal Pfad As String) As Long

Public Sub Test()
Dim wksSheet As Worksheet
Dim lngLastRow As Long
On Error GoTo Fin
Set wksSheet = ThisWorkbook.Worksheets("Tabelle1") 'anpassen!
With wksSheet
lngLastRow = .Range("A" & .Rows.Count).End(xlUp).Row ' Spalte A
For lngLastRow = 1 To lngLastRow ' ab Zeile 1 also eventuell anpassen
If Trim(.Cells(lngLastRow, 1).Value) <> "" Then

MakeSureDirectoryPathExists (strPfad1 & .Cells(lngLastRow, 1).Value & "\")

End If
Next lngLastRow
End With
Fin:
Set wksSheet = Nothing
End Sub
 

Kojak19

Hochzeitsapfel
Registriert
13.10.09
Beiträge
9.267
Das Makro versucht auf ein Laufwerk "C" zuzugreifen.
Das wird auf einem Mac schwierig.

Wie in dem Link von MACaerer bereits zu ersehen, muss dein Makro auf OSX angepasst werden.
Vielleicht findet sich hier ja noch jemand, der das auf dem Kasten hat.
 

Beat Schmid

Erdapfel
Registriert
13.06.13
Beiträge
2
dass der Mac kein Laufwerk C hat, ist mir auch bekannt, an dem liegt es nciht. Und da ich kein Programmierer bin, sehe ich mich da vor einem grossen Wald und hoffe, dass sich da jemand auskennt.
 

Kojak19

Hochzeitsapfel
Registriert
13.10.09
Beiträge
9.267
Wie meinst du das? Hattest du das Makro schon mit einer für OSX gültigen Pfadangabe ergänzt?

Edit: Ach, hätte ich deinen ersten Post gründlicher gelesen, wären meine Beiträge überflüssig gewissen.
Mea Culpa. :(
 

TKL

James Grieve
Registriert
19.04.13
Beiträge
134
Problem:
Da das Makro kaum VBA-Code enthält (eine Konstanten-, eine Funktions- und zwei Variablen-Deklarationen sowie eine Schleife und eine Bedingung) und die eigentliche Funktionalität (Ordner von den Angaben in der ersten Spalte der Excel Tabelle erstellen) in eine plattformspezifische externe Bibliothek (DLL für Windows) ausgelagert ist, wird es unter Excel:mac niemals laufen.

Lösung:
Das Makro neu programmieren.
Das Erstellen der Ordner könnte z. B. über den Aufruf eines entsprechenden Applescripts realisiert werden.
Die Verzeichnis-Pfade müssen in einer unter OS X gültigen Form angegeben werden.

Eine vollständige Pfadangabe beginnt mit dem Namen des Volumes gefolgt von den Namen der Ordner (entlang der Verzeichnishierarchie vom Wurzelverzeichnis bis zum gewünschten Ordner); Volume- und Ordnernamen werden jeweils mit einem Doppelpunkt voneinander getrennt.


Wenn sich das Zielverzeichnis ändern kann, sollte der Pfad nicht als Konstante im Programmcode hinterlegt werden (schlechter Programmierstil).
 
Zuletzt bearbeitet:

Kojak19

Hochzeitsapfel
Registriert
13.10.09
Beiträge
9.267
Mod-Info

Da dies ein öffentliches Forum ist, darf das Problem sowie die Lösung auch gern öffentlich gepostet werden.
Und sollte es sich bei deinem Post um eine kleine Job-Offerte handeln, für die du außer Danke und Karma noch etwas anderes erwartest,
wird es hier spontan unbürokratisch.
Da ich aber eigentlich keine Lust habe, irgendwem einen überzuhelfen, korrigiere mich gerne in meiner Annahme.