Mein Ziel hier ist es, eine JMP-Datentabelle mit einer Excel-Tabelle zu verknüpfen. Während Excel-Benutzer die Tabelle füllen, möchte ich, dass die Datentabelle automatisch (beim Öffnen oder kontinuierlich während des Öffnens) mit den neuen Daten neu gefüllt wird. Ich möchte die Notwendigkeit beseitigen, die neuen Daten jedes Mal neu zu kopieren, um jegliches Risiko von Kopierfehlern zu vermeiden und letztendlich die Grundgesamtheit zu validieren.Ist das möglich und wenn ja, wie wird dies durchgeführt?
Ich bin mit Skripten nicht vertraut; Für jede Hilfe beim Schreiben von Skripten oder beim Verweisen auf andere Blogs wäre ich sehr dankbar.
Mit freundlichen Grüßen,
Jeff
Genau das möchte ich durchführen.Ich bin mit Scripting nicht vertraut.Können wir das besprechen?
Danke schön,
Jeff
Um das zu ergänzen, was Hadley geschrieben hat. Wenn ich Ihre Forderung verstanden habe, möchten Sie dieselbe JMP-Datentabelle mit den neuen Daten in der Excel-Tabelle aktualisieren und nicht einfach eine neue Tabelle aus der neuen Excel-Tabelle erstellen. Wenn Letzteres zutrifft, hat Hadley Recht, wäre dies der einfachste Weg, das automatisch generierte Importskript zu verwenden und es jedes Mal erneut auszuführen, wenn Sie die neuen Daten (in einer neuen Datentabelle) abrufen möchten.
Falls es meiner Meinung nach das ist, was Sie endlich erreichen wollen, könnte Folgendes hilfreich sein:
Names default to here(1);
// Excel Sheet you get the new data from
excelFile = "Wetterdaten.xlsx";
// current data table - which has data from an earlier time point of the Excel file
cdt = Current Data Table();
// get the name of the JMP table and the current number of rows
cdtName = cdt << get name();
n_Rows = NRows();
// use the import script used when importing the Excel file the first time
// you need to adjust this if the Excel file will be changed in the structure or other columns have been added or placed to other positions.
dtHelp = Open(
excelFile,
Worksheets( {eval(cdtName)} ),
Use for all sheets( 1 ),
Concatenate Worksheets( 1 ),
Create Concatenation Column( 0 ),
Worksheet Settings(
1,
Has Column Headers( 1 ),
Number of Rows in Headers( 1 ),
Headers Start on Row( 1 ),
Data Starts on Row( 2+ n_Rows ),
Data Starts on Column( 1 ),
Data Ends on Row( 0 ),
Data Ends on Column( 0 ),
Replicated Spanned Rows( 1 ),
Suppress Hidden Rows( 1 ),
Suppress Hidden Columns( 1 ),
Suppress Empty Columns( 1 ),
Treat as Hierarchy( 0 )
), Invisible
);
// Now just concatenate the JMP Table with the new imported data - but only with the data after the number of rows from the current JMP table.
cdt << Concatenate (dtHelp, Append to first table);
// delete helping table
Close(dtHelp);
Im Anhang finden Sie eine ZIP-Datei mit einem vollständigen Beispiel für einige Wetterdaten und Importdaten. In beiden Fällen ist dieses Skript enthalten. Sie können das Skript ausführen, das dann die Excel-Datei aufruft, die Daten abruft und sie der offenen Datentabelle hinzufügt . Außerdem gibt es ein Dokument, das es noch einmal erklärt (leider auf Deutsch, aber ein Online-Übersetzer sollte gute Arbeit leisten, ich habe das vor einigen Jahren erstellt).
Der Vorteil besteht darin, dass alle Änderungen, die Sie an der Datentabelle vorgenommen haben, wie z. B. Qualitätsprüfungen für die „alten“ Daten, erhalten bleiben und auch neue Formelspalten für die neuen Daten funktionieren.
Ah, noch ein Kommentar zur Excel-Tabelle. Wenn Sie die Excel-Tabellendaten ändern, die bereits importiert wurden (d. h. nach Zeilennummer = Anzahl der Zeilen in der JMP-Tabelle), werden diese Änderungen nicht in der Datentabelle aktualisiert, da wir nur Zeilen nach den aktuellen importieren oder besser gesagt hinzufügen .
Hallo,
Der einfachste und einfachste Weg, dies zu tun, besteht möglicherweise darin, Ihre Excel-Datei in ein geöffnetes JMP-Fenster zu ziehen, wodurch der Excel-Import-Assistent geöffnet wird.Von dort aus können Sie die Importeinstellungen anpassen und die Tabelle im richtigen Format importieren, das Sie speichern können.Die Tabelle verfügt über ein „Quell“-Skript, das bei Betätigung die mit den neuen Daten aktualisierte Tabelle erneut importiert.Hilft das dabei, das zu erreichen, was Sie erreichen möchten?