Fischer-Bayern.de
 FAQFAQ   SuchenSuchen   MitgliederlisteMitgliederliste   BenutzergruppenBenutzergruppen   RegistrierenRegistrieren 
 ProfilProfil   Einloggen, um private Nachrichten zu lesenEinloggen, um private Nachrichten zu lesen   LoginLogin 

Anlage eines Ordners über Parameter

 
Neues Thema eröffnen   Neue Antwort erstellen    Fischer-Bayern.de Foren-Übersicht -> AppleScript X
Vorheriges Thema anzeigen :: Nächstes Thema anzeigen  
Autor Nachricht
Joo42
•->
•->


Anmeldedatum: 17.08.2015
Beiträge: 2

BeitragVerfasst am: 17.08.2015 - 13:34    Titel: Anlage eines Ordners über Parameter Antworten mit Zitat

Hallo,

ich habe folgendes Applescript:

Code:
tell application "Finder"
   
   make new folder at folder "data" of folder "Horizon" with properties {name:foldername}
   
end tell


Jetzt möchte ich das statt den ordnernamen fest anzugeben, dieser variabel ist und bspw. über einen Userform aus excel angegeben werden kann.

Geht das Irgendwie?

Vielen Dank im Voraus
Gruss Jörg
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
Lösung_Monitor_Auflös_App
•-->
•-->


Anmeldedatum: 25.01.2016
Beiträge: 53

BeitragVerfasst am: 10.02.2016 - 10:56    Titel: Antworten mit Zitat

ich würde das so lösen:
1) Aus dem Excel heraus kannst du handlings den Zwischenspeicher füttern mit (Apfel-Taste+c)
2) dann klickst du ein AS-script an das Z.B. auf dem dock deponiert ist und sog on run und on open Eigenschaften besitzt, als .app-Programm gespeichert (darüber gibt dir in hervorragender Weise Snows handler-Seite Auskunft nach der du dein obiges Script etwa in folgende Blöcke adaptieren könntest:
http://www.fischer-bayern.de/applescript/html/handler.html
Zitat:
on run
   set theFileList to choose folder with multiple selections allowed
   GetFileName(theFileList) -- Aufruf des Handlers
end run

on open theFileList
   GetFileName(theFileList) -- Aufruf des Handlers
end open

einen direkten Weg aus Excel gibt es sicherlich aber wenn ich die Mühen von Word mit dem AS als Warnung heranziehe würde ich dir eher abraten von so einem Unterfangen das man nun wirklich leichtestens mit dem Zwischenspeicher umgehen kann.
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
Wolle-77
•--->
•--->


Anmeldedatum: 25.02.2003
Beiträge: 447
Wohnort: Geldern

BeitragVerfasst am: 10.02.2016 - 16:39    Titel: Antworten mit Zitat

Sag mal bitte, "Lösung_Monitor_Auflös_App"

Du bist aber nicht zufällig die Reinkarnation vom ehemaligen Forumsmonster, dem Dermatologen aus O. im naheliegendsten Nicht-EU-Land, oder?

Denn Deine Beiträge lesen sich genauso schwerfällig, krude und beinhalten unglaublich verschwurbelt fast keinerlei Substanz, dafür aber kilometerlange Spaghetticode-Ressourcenfresser.

Sorry, aber wenn Du Joo42 mit seinem inzwischen halben Jahr alten "Problem" helfen willst, dann tu das doch einfach und schippte ihm was fertiges oder laß es bleiben. Aber Du brauchst doch nicht einem ASler zu erklären, was eine Zwischenablage ist und auf rudimentäre Grundtechniken verweisen, die vor zehn Jahren (!) mal verfasst worden sind?

Wenn sich Joo meldet, werde ich ihm mal was basteln, aber ich glaube, das ist nicht mehr akut.

Nur meine Meinung.
_________________
Martin Wolter
--
Apple rocks the planet!
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden
Lösung_Monitor_Auflös_App
•-->
•-->


Anmeldedatum: 25.01.2016
Beiträge: 53

BeitragVerfasst am: 11.02.2016 - 13:31    Titel: Re: Anlage eines Ordners über Parameter Antworten mit Zitat

sorry edit 24.2.16:
Zwischenspeicher ist wohl keine gute Lösung: man sollte ihn ja prinzipiell meiden im AS
(ausser im FileMaker, wo für markierten Text keine Alternative exisitert)
Erst jetzt habe ich mich erinnert (man vergisst ja so viel):
der Umgang mit Words do Visual Basic ist verschlungen, Finten- und Fehler-reich im Vergleich zum geradezu trivialen Umgang mit Excels Appel-Script-Sprachen Gebrauch:(document , Sheet , Cell)
Joo42 hat Folgendes geschrieben:

Code:
tell application "Finder"
   
   make new folder at folder "data" of folder "Horizon" with properties {name:foldername}

end tell



Mein gebastel zu obigem Problem würde also so lauten: hat Folgendes geschrieben:
tell application "Microsoft Excel"
   tell document "Arbeitsmappe1"
      tell Sheet "Tabelle1"
         set Clipper to Formula of Cell "Z1S1"
      end tell
   end tell
end tell
--set Clipper to the clipboard
set Aus_Excel_gelesener_Ordnername to Clipper
tell application "Finder"
   display dialog ¬
      "der neue, aus Excel kopierte Ordner heisst:
Kannst diesen Namen HIER noch ändern-->" default answer Aus_Excel_gelesener_Ordnername
   copy the result as list to {Antwort, ButtKlick}
   set foldername to Antwort
   try
      --try <--für den Fall dass schon ein solchnamiger Ordner existiert
      make new folder at folder "data" of ¬
         folder "Horizon" with properties ¬
         {name:foldername}
   end try
   --zur Kontrolle:
   open folder "Horizon"
   set frontmost of application "Finder" to true
end tell

An Joo42:
Wenn du dennoch Zwischenspeicher brauchen willst wäre dein script dann sehr praktisch, wenn es als Programm gespreichert ist "as .app" und dann der link dazu Z.B. auf den Schreibtisch oder im Dock positioniert wird.


Zuletzt bearbeitet von Lösung_Monitor_Auflös_App am 20.04.2016 - 08:00, insgesamt einmal bearbeitet
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
Lösung_Monitor_Auflös_App
•-->
•-->


Anmeldedatum: 25.01.2016
Beiträge: 53

BeitragVerfasst am: 26.02.2016 - 16:09    Titel: Antworten mit Zitat

Was ich so schätze an Joo24 ist, dass er Zeit gibt wieder auf meinen ursprünglichen Vorschlag zurückzugreifen, nämlich einen {on run on open-handler} vorzuschlagen von folgendem Bautyp:
Zitat:
on run
   set derFILE to choose file
   MachWas(derFILE)
end run
on open derFILE
   MachWas(item 1 of derFILE)
end open
on MachWas(derFILE)
   return display dialog derFILE as text
end MachWas

Mit sowas kann man jenes Excel-doc "ziehen", das die entsprechenden Tabellen-Felder enthält, welche Angaben über die Finder-Ordner-Topographie enthalten und zwar direkt über das AS kann man es "ziehen" wenn das AS als {ein.. Programm.. .app} gespeichert ist, am besten auf dem Schreibtisch oder im Doc abgelegt
Deine Findertopographie habe ich belassen, wirst sie im untersten handler-Block wiedererkennen:
Joo42 hat Folgendes geschrieben:

Code:
tell application "Finder"
   
   make new folder at folder "data" of folder "Horizon" with properties {name:foldername}
   
end tell


Mein ultimativer?! Vorschlag hat Folgendes geschrieben:
on run
   tell application "Finder" to set FileListe to ¬
      {file (choose file with prompt ¬
         "Wähle ein Excelfile um einen neuen Ordner zu kreieren" as list)}
   set FileListe to FileListe as text
   tell application "Finder"
      activate
      (select alias FileListe) activate
   end tell
   my excelFeldinhaltAlsOrdnername(FileListe)
end run
on open FileListe
   my excelFeldinhaltAlsOrdnername(FileListe)
end open
on excelFeldinhaltAlsOrdnername(FileListe)
   set EinExcelFile to name of (get info for alias FileListe)
   tell application "Finder"
      open file FileListe
   end tell
   tell application "Microsoft Excel"
      Activate
      tell document EinExcelFile --Z.B. "Arbeitsmappe1"
         tell Sheet "Tabelle1" --<--Z.B.
            set Clipper to Formula of Cell "Z1S1" --<--Z.B.
         end tell
      end tell
      set Aus_Excel_gelesener_Ordnername to Clipper
      display dialog ¬
         "der neue, aus Excel kopierte Ordner heisst:
Kannst diesen Namen HIER noch ändern-->" default answer Aus_Excel_gelesener_Ordnername
   end tell
   copy the result as list to {Antwort, ButtKlick}
   set foldername to Antwort
   tell application "Finder"
      try
         --try <--für den Fall dass schon ein solchnamiger Ordner existiert
         make new folder at folder "data" of ¬
            folder "Horizon" with properties ¬
            {name:foldername}
      end try
      --zur Kontrolle:
      open folder "Horizon"
      set frontmost of application "Finder" to true
   end tell
end excelFeldinhaltAlsOrdnername
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
Wolle-77
•--->
•--->


Anmeldedatum: 25.02.2003
Beiträge: 447
Wohnort: Geldern

BeitragVerfasst am: 26.02.2016 - 19:24    Titel: Antworten mit Zitat

Sorry, aber zu diesem Kauderwelsch in Sprach- und komplett blödsinnigen, umständlichen und unperformanten Spaghetticode in vergewaltigter Scriptform kann ich nur eines sagen:

„Hilfe, Er ist wieder da!”
_________________
Martin Wolter
--
Apple rocks the planet!
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden
Lösung_Monitor_Auflös_App
•-->
•-->


Anmeldedatum: 25.01.2016
Beiträge: 53

BeitragVerfasst am: 28.02.2016 - 11:01    Titel: was ist odd so plötzlich im Forum? wie HILFE? den HILFElosen Antworten mit Zitat

Joo42 hat Folgendes geschrieben:
...über einen Userform aus excel angegeben werden kann.
Geht das Irgendwie?

nanu, so dann halt meine simplifizierte Fassung:
läuft es wenigstens bei euch?
Mein Gebastel also: hat Folgendes geschrieben:
on run
   tell application "Finder" to set aaa to ¬
      {file (choose file with prompt ¬
         "Exceldatei wählen aus dessen Zellinhalt \"ein Ordnernamen über einen Userform aus excel angegeben werden kann\"(Zitat Joo42)" as list)}
   set aaa to aaa as text
   my aHANDLER(aaa)
end run
on open aaa
   my aHANDLER(aaa)
end open
on aHANDLER(aaa)
   set bbb to name of (get info for alias aaa)
   tell application "Finder"
      open file aaa
   end tell
   tell application "Microsoft Excel"
      activate
      tell document bbb
         tell sheet "Tabelle1"
            set ccc to formula of cell "Z1S1"
         end tell
      end tell
      display dialog ¬
         "die gewählte Excel-Datei liefert aus Zelle \"Z1S1\"den Ordnernamen:
Man kann diesen Namen HIER noch ändern-->" default answer ccc
   end tell
   copy the result as list to {foldername, eee}
   tell application "Finder"
      
      make new folder at folder "data" of folder "Horizon" with properties {name:foldername}
      
      open folder "Horizon"
      set frontmost of application "Finder" to true
   end tell
end aHANDLER

mit den ca. 7 letzen Zeilen wäre doch dann in etwa dem entsprochen was Joo42 als Vorgabe hingelegt hat:
Joo42 hat Folgendes geschrieben:
tell application "Finder"

make new folder at folder "data" of folder "Horizon" with properties {name:foldername}

end tell
Zitat:
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
Beiträge der letzten Zeit anzeigen:   
Neues Thema eröffnen   Neue Antwort erstellen    Fischer-Bayern.de Foren-Übersicht -> AppleScript X Alle Zeiten sind GMT + 2 Stunden
Seite 1 von 1

 
Gehe zu:  
Du kannst keine Beiträge in dieses Forum schreiben.
Du kannst auf Beiträge in diesem Forum nicht antworten.
Du kannst deine Beiträge in diesem Forum nicht bearbeiten.
Du kannst deine Beiträge in diesem Forum nicht löschen.
Du kannst an Umfragen in diesem Forum nicht mitmachen.


Powered by phpBB © 2001, 2002 phpBB Group
Deutsche Übersetzung von phpBB.de


AppleScript für absolute Starter