Exportieren Sie die Datentabelle mithilfe von Skripten nach ExcelHallo, ich versuche zu lernen, wie ich meine Datentabelle mithilfe von Skripten und etwas Automatisierung nach Excel exportieren kann.
Ich verwende save(""), um ein Fenster „JMP-Datei speichern unter“ zu öffnen, in dem ich aufgefordert werde, die Datei zu speichern. Ich möchte, dass „Dateityp“ auf *.xls anstelle von *.jmp eingestellt ist, damit ich es nicht jedes Mal ändern muss. Ich möchte auch den Standardordner festlegen, in dem die Datei gespeichert wird. Kann dies alles in den Scipting-Befehlen erfolgen? Ich bin ein neuer Benutzer und suche nach einer einfachen Lösung. Danke für jeden Tipp! ~Shannon
Betreff: Datentabelle mithilfe von Skripten nach Excel exportierenDas ist fantastisch! Aber wie kann man den Benutzer fragen, ob eine vorhandene Datei ersetzt werden soll oder nicht?
Betreff: Datentabelle mithilfe von Skripten nach Excel exportierenHallo,
Ich habe ein Problem mit vielen Excel-Dateien, die vor langer Zeit mit riesigen Datenmengen erstellt wurden. Ich gehe davon aus, dass diese früher erstellt wurden. 2007 oder 2003. Das Seltsame ist, dass die Datei auf 95 % der Computer nicht funktioniert. Sie stürzt ab, wenn eine Spalte hinzugefügt oder gelöscht wird, mit Fehler 1000 und Execel.exe.
Ich habe es mit zwei Möglichkeiten versucht, die gut funktioniert haben, aber das ist nicht die Lösung, die ich brauche. Die Dateien enthalten Freezpan und wenn ich die Freezpan-Funktion aufhebe, funktioniert das einwandfrei oder ich kopiere das Blatt auf ein neues Blatt, dann funktioniert es auch dann einwandfrei, wenn Freezpan aktiviert ist.
Wie kann dieses Problem bei Hunderten von Dateien behoben werden? Ich bleibe bei diesem Problem hängen.
Vielen Dank. Adv.
Grüße
Faisal
Betreff: Datentabelle mithilfe von Skripten nach Excel exportierenSo etwas würde eine .jmp-Erweiterung entfernen und .xlsx anhängen. Wenn Sie im Filter bereits eine XLSX-Datei ausgewählt haben, passiert nichts und die Datei wird überschrieben. Bitte beachten Sie, dass JMP XLSX gut speichern kann, XLS jedoch nicht wirklich gut.
dt = aktuelle Datentabelle();
filepath = pickFile("Wählen Sie eine Datei zum Speichern aus", "c:\", {"Excel Files|xlsx"}, 1, 1);
pos = Enthält(Dateipfad, ".xlsx");
if (pos == 0, filepath = Left(filepath, pos-1); filepath = filepath || ".xlsx");
dt << Speichern unter(Dateipfad, Excel-Datei);
Brian Corcoran
JMP-Entwicklung
Betreff: Datentabelle mithilfe von Skripten nach Excel exportieren@ShannonK ,
Ja, du hast recht. Wenn Sie eine bereits vorhandene Datei auswählen, ist die Erweiterung enthalten. Wenn es sich jedoch um eine NEUE Datei handelt, müssen Sie die Erweiterung angeben.
@Craige_Hales Kannst du vielleicht noch weitere Kommentare abgeben?
Betreff: Datentabelle mithilfe von Skripten nach Excel exportierenIch danke Ihnen für Ihre Hilfe. Ich habe den von Ihnen vorgeschlagenen Speichercode eingefügt, erhalte jedoch die Fehlermeldung: „Datei konnte nicht gespeichert werden.“ Unbekanntes Datenziel.“
Ich habe erfolglos versucht, den Fehler zu beheben. Wenn ich die Ausgabe auf SaveFilePath überprüfe, sieht sie so aus: „/C:/Users/jmp/name“. Ich gehe davon aus, dass das Problem darin besteht, dass die Speicherfunktion nicht „.xlsx“ zum Dateinamen hinzufügt.
(Ich verwende Windows, aber „/C: ...“ scheint kein Problem zu sein.)
Habe ich den Fehler richtig erkannt? Irgendwelche Ideen, wie ich das Problem beheben kann?
Danke schön!
Shannon
Betreff: Datentabelle mithilfe von Skripten nach Excel exportierenHallo @ShannonK ,
Der Dialog „Datei auswählen“ ist also nur für die Sicherung des gewünschten Pfads und Dateinamens verantwortlich. Also in deinem Beispiel:
Sagen wir:
path = "$DOCUMENTS" // this is shorthand for your "My Documents" folder<BR />
filtereddata = sorteddt << Subset(
(Selected Rows),
Columns(:YEARX, :PSU, :CASEID, :RATWGT, :VEHNO, :OCCNO, :DVTOTAL, :ROLLOVER, :GAD1, :PDOF1, :DOF1, :BODYTYPE, :AGE, :ROLE, :SEATPOS),
Output Table Name(filename)
);
SaveFilePath = Pick File(
"Save Filtered Data",
path,
{"Excel Files|xlsx;xls", "JMP Datatables|jmp", "Text Files|txt;csv;dat", "All Files|*"},
1,
saveFlag = 1
);
Nachdem Sie den Ordner ausgewählt und einen Namen für die Datei ausgewählt haben, wird die Variable SaveFilePath enthält diese Informationen als Zeichenfolge.
Sie würden dann Folgendes tun:
SaveFilePath );filtereddata << Save(
Betreff: Datentabelle mithilfe von Skripten nach Excel exportierenDas ist großartig, danke.
Ich habe jedoch immer noch ein Problem. Wie kann ich ihm sagen, welche Datei ich speichere? Ich gebe einen Dateinamen ein, unter dem ich die Datei speichern möchte, aber in meinem Ordner wird nichts angezeigt. Ich frage mich, ob das daran liegt, dass es nichts zu speichern gibt?
Ich erstelle eine Datentabelle und führe dann den von Ihnen vorgeschlagenen SafeFileWindow-Code aus. Es tut mir leid, wenn mir etwas Einfaches entgeht. Ich bin neu in diesem Bereich! (Außerdem wird aus irgendeinem Grund das Fenster zum Speichern der Datei angezeigt, bevor die Datentabelle angezeigt wird. Mit anderen Worten: Das Fenster zum Speichern der Datei ist nach der Ausführung dieses Codes nicht das aktive Fenster.)
Vielen Dank für Ihre Hilfe.
Hier ist ein Teil meines Codes:
filtereddata = sorteddt << Subset(
(Ausgewählte Zeilen),
Spalten (:YEARX, :PSU, :CASEID, :RATWGT, :VEHNO, :OCCNO, :DVTOTAL, :ROLLOVER, :GAD1, :PDOF1, :DOF1, :BODYTYPE, :AGE, :ROLE, :SEATPOS),
Name der Ausgabetabelle (Dateiname)
);
SaveFileWindow = Datei auswählen(
„Gefilterte Daten speichern“,
Weg,
{"Excel-Dateien|xlsx;xls", "JMP-Datentabellen|jmp", "Textdateien|txt;csv;dat", "Alle Dateien|*"},
1,
saveFlag = 1
);
Betreff: Datentabelle mithilfe von Skripten nach Excel exportieren@ShannonK
Versuchen Sie Folgendes, indem Sie „“ durch den Ordnerpfad ersetzen, der ursprünglich angezeigt werden soll::
SaveFileWindow = Pick File(
"Save File",
"<DEFAULT folder="" path="">",
{"Excel Files|xlsx;xls", "JMP Datatables|jmp", "Text Files|txt;csv;dat", "All Files|*"},
1,
saveFlag = 1
);
</DEFAULT>
Weitere Informationen zur Funktion „Datei auswählen“ finden Sie unter: http://www.jmp.com/support/help/13/Select_a_Directory_or_File.shtml