hilfdirselbst.ch
Facebook Twitter gamper-media
Mac OS X enthält verschiedene integrierte Werkzeuge und Technologien, mit denen sich gängige Aufgaben schnell und einfach automatisieren lassen.
Goar S
Beiträge: 317
18. Sep 2003, 19:46
Beitrag #1 von 3
Bewertung:
(523 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen

Fehler -619 beim Kopieren ins clipboard


Hallo Scripter,

aus einer FileMaker-Datenbank kopiere ich mir per Skript verschiedene Datenblöcke in eine Liste (export) und die dazugehörigen Namen, unter denen diese Blöcke abgespeichert werden sollen (fileName).

Zunächst ist es mir gelungen, diese Blöcke (vor dem Einsetzen jeweils in eine Variable "curData" zwischengespeichert) in Tex-Edit-Dokumente zu kopieren und wunschgemäß unter den entsprechenden Namen zu sichern.

Da diese Dateien aber in Excel (MacOS 9.2.2, Microsoft Office 98) weiterbearbeitet werden, habe ich versucht, die Datenblöcke statt in Tex-Edit gleich in Excel abzuspeichern. Leider hatte ich keine Musterskripts für Excel und außer "paste" habe ich nichts gefunden, wie ich Daten aus einer AS-Variablen in eine Excel-Tabelle bekommen kann. Da "paste" aber nur Daten aus dem Zwischenspeicher einsetzt, musste ich den Inhalt der Variablen in den Zwischenspeicher laden.

Dies ist zwar nicht das Original-Skript, aber die wesentlichen Elemente sind drin, und der Fehler tritt hier auch auf:
-----
on run
 set export to {"H", "R", "M", "Z"} -- Dummy-Inhalte
 set fileName to {"Ha", "eR", "eM", "Zet"} -- Dummy-Dateinamen
 global export
 global fileName
 set speicherPfad to "MacintoshHD2tArbeiten:Eigene Scripts:FM:"
 repeat with i from 1 to length of export
  set curData to item i of my export
  set the clipboard to curData --> An error of type -619 has occurred. (Bad thread protocol)
  set curName to item i of my fileName
  tell application "Microsoft Excel"
   Activate
   Create New Workbook
   Paste
   AutoFit Column "A:C"
   Save ActiveWorkbook In speicherPfad & curName & ".xls" As xlNormal Password "" WriteReservedPassword "" without ReadOnlyRecommended and CreateBackup
   Close ActiveWindow
  end tell
 end repeat
end run
-----

Dieser Weg funktionierte auch prima bei der ersten Excel-Datei. Beim Versuch, das zweite item der Liste in den Zwischenspeicher zu laden, kam jedoch die Fehlermeldung "An error of type -619 has occurred." In meinem FileMaker-Kochbuch steht dazu: "Bad thread protocol". Wers versteht.
Nun verstehe ich weder den Fehler, noch seine Ursache.
Aber vielleicht muss ich ja auch gar nicht über den Zwischenspeicher gehen?
Wer weiß das?

Apropos Excel? Gibts dazu irgendwo Beispiel-/Syntax-Skripts? Wie entfernt man z.B. leere Spalten, sagen wir im Bereich der Spalten A bis EY?
Weil, dann hätte meinen manuellen Aufwand vom Vorjahr auf schätzungsweise unter 5% eingedampft. Top
 
X
Anonym
Beiträge: 22827
18. Sep 2003, 22:43
Beitrag #2 von 3
Beitrag ID: #418297
Bewertung:
(522 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen

Fehler -619 beim Kopieren ins clipboard


Hi Goar,

ich hab Dir mal ein paar Beispiele zusammengesammelt.

Ich hoffe, die helfen Dir bei deinen weiteren Studien.

tell application "Microsoft Excel"
   set nPartsShip to Value of Cell "R1C1" of Worksheet "sheet1" of Workbook "test.xls"
   set Value of Cell "R2C1" to 10
   set Value of Cell "firstItem" to 100.0
   Select Range "R2C1:EOFC1"
   Select Sheet "MainSheet"
   set LastRow to ("R4C2")
   set Formula of Cell "R1C1" to The_name -- R = Row; C = Column also R1C1 = Cell A1
   Create New Workbook
   Select Range "Z1:Z65536"
   AutoFit every Column of Selection
   Select Range "S3"
   Select Range "S3:S6"
   set NumberFormat of Selection to "#.##0,00"
   Save ActiveWorkbook In datei_name & ".xls" As xlNormal Password "" WriteReservedPassword "" without ReadOnlyRecommended and CreateBackup
   Select Range "C2"
   set NumberFormat of Selection to "mm/dd/yyyy"
   
end tell


happy filemaking

Armin
als Antwort auf: [#418296] Top
 
Anonym
Beiträge: 22827
20. Sep 2003, 08:17
Beitrag #3 von 3
Beitrag ID: #418298
Bewertung:
(522 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen

Fehler -619 beim Kopieren ins clipboard


Hi Goar,

ich hab mir jetzt mal die Zeit genommen, dein Script zu testen. Hier das funktionierende Script.

global export
global fileName

on run
 set export to {"H", "R", "M", "Z"} -- Dummy-Inhalte
 set fileName to {"Ha", "eR", "eM", "Zet"} -- Dummy-Dateinamen
 set speicherPfad to (choose folder)
 repeat with i from 1 to (length of export)
  set curData to item i of export -- Armin: my rauslassen!
  set the clipboard to curData --> An error of type -619 has occurred. (Bad thread protocol)
  set curName to item i of my fileName
  tell application "Microsoft Excel"
   Activate
   Select Range "A1:C3"
   AutoFit every Column of Selection
   Paste
   Save ActiveWorkbook In (speicherPfad & curName & ".xls" as string) As xlNormal Password "" WriteReservedPassword "" without ReadOnlyRecommended and CreateBackup -- Armin:Den Pfad als string angeben, sonst kommt eine liste und daher ein Fehler
   Close ActiveWindow
  end tell
 end repeat
end run


happy filemaking

Armin
als Antwort auf: [#418296] Top