Datei öffnen und Skript fortsetzenHallo,
In einem Skript fordere ich einen Benutzer auf, eine Datei zu öffnen:
LBSelect = Open( "file path",
Use Labels For Var Names( 1 )
);
Dadurch wird ein Ordner geöffnet und der Benutzer muss die richtige Datei auswählen.Wenn die Datei geöffnet wurde, sollte das Skript mit einer Reihe von Aktionen basierend auf dieser Datei fortfahren.
Wie kann ich das Skript warten lassen, bis eine Datei geöffnet wurde? Ich habe über „wait()“ nachgedacht, aber das gibt nur an, wie viele Sekunden gewartet werden muss, und da diese Dateien in der Regel sehr groß sind, passt das nicht gut.
Wie kann ich warten lassen, bis die Datei geöffnet wird?
Kann ein modales Fenster auf irgendeine Weise verwendet werden?
Br. Julie
Betreff: Datei öffnen und Skript fortsetzenSiehst du ungefähr so aus?
Names Default To Here( 1 );
New Window( "Data and Limits file",
<<MODAL></MODAL>
Betreff: Datei öffnen und Skript fortsetzenWait(0)
... ist eine gängige Methode zu warten, bis eine Aufgabe abgeschlossen ist.Ich bin mir nicht sicher, ob ich es jemals im Zusammenhang mit dem Öffnen von Dateien verwenden musste.
Betreff: Datei öffnen und Skript fortsetzenOk – das kann ich sehen.
Normalerweise mache ich das, wenn ich einen Benutzer auffordere, eine Datei zu öffnen (wobei er selbst zu der Datei navigiert). In diesem Fall wollte ich dort den Dateipfad hinzufügen, um die Anzahl der Klicks zu reduzieren, und dann gelang es mir, mich selbst zu verwirren.
Jetzt habe ich das gemacht:
path = Pick File("Select lb", "file path");
LBSelect = Open( path,
Use Labels For Var Names( 1 )
);Aber es scheint nicht zu funktionieren. Die LB-Datei wird als LB geöffnet, nicht als LBSelect.
Was mache ich falsch?
Betreff: Datei öffnen und Skript fortsetzenDu bist verwirrt. Der Offen() Funktion öffnet eine Datei. Der Datei auswählen() Die Funktion präsentiert einen Dialog und gibt einen vollständigen Pfad zur ausgewählten oder fehlenden Datei zurück. Rufen Sie also an Datei auswählen() Funktion und verwenden Sie das Ergebnis, um die Datei mit zu öffnen Offen() Funktion, oder rufen Sie die auf Offen() Funktion ohne Pfad.
Betreff: Datei öffnen und Skript fortsetzenHallo,
Ich habe ein paar Ideen.
1. Versuchen Sie, wait() ohne eine darin enthaltene Zahl zu verwenden. Es wird gewartet, bis alle vorherigen Befehle abgeschlossen sind (ich hoffe, dass es wahr ist).
2. Machen Sie eine Schleife mit Warten und Versuchen
For( i = 1, i <= 100, i++,
Try(
LBSelect << Bring Window to front();//run any command on table which will fail in case the table is not ready
Break();//if not failed - terminate the loop
,
Wait( 1 )
);//if failed - wait 1 second and try again
);
Betreff: Datei öffnen und Skript fortsetzenVielleicht ist es besser, wenn Sie so etwas tun? Sehen Sie sich den fettgedruckten Text an. Alles andere ist optional, je nachdem, was ich mit meinen Daten tun musste.
Offen(
Datei auswählen(),
Arbeitsblätter( "Daten" ),
Für alle Blätter verwenden( 1 ),
Arbeitsblätter zum Verketten (0),
Verkettungsspalte erstellen( 0 ),
Arbeitsblatteinstellungen(
1,
Hat Spaltenüberschriften( 1 ),
Anzahl der Zeilen in Überschriften ( 4 ),
Überschriften beginnen in Zeile (21),
Daten beginnen in Zeile (25),
Daten beginnen in Spalte (1),
Daten enden in Zeile (0),
Daten enden in Spalte (0),
Replizierte übergreifende Zeilen ( 1 ),
Replizierte Spanned Header( 0 ),
Versteckte Zeilen unterdrücken ( 1 ),
Ausgeblendete Spalten unterdrücken( 1 ),
Leere Spalten unterdrücken( 1 ),
Behandeln als Hierarchie( 0 ),
Mehrere Serienstapel (0),
Zellenfarben importieren( 0 ),
Grenzwertspaltenerkennung ( 0 ),
Spaltentrennzeichenfolge( "-" )
)
)
Betreff: Datei öffnen und Skript fortsetzenIm Wesentlichen ist dies also Folgendes ...
Offen(
Datei auswählen(),
.....
)