Hot News:

Unser Angebot:

  Foren auf CAD.de (alle Foren)
  TM - Plant Simulation
  Exceldatei einlesen

Antwort erstellen  Neues Thema erstellen
CAD.de Login | Logout | Profil | Profil bearbeiten | Registrieren | Voreinstellungen | Hilfe | Suchen

Anzeige:

Darstellung des Themas zum Ausdrucken. Bitte dann die Druckfunktion des Browsers verwenden. | Suche nach Beiträgen nächster neuer Beitrag | nächster älterer Beitrag
Autor Thema:  Exceldatei einlesen (1095 mal gelesen)
pom
Mitglied
Dipl.-Ing. (FH)


Sehen Sie sich das Profil von pom an!   Senden Sie eine Private Message an pom  Schreiben Sie einen Gästebucheintrag für pom

Beiträge: 182
Registriert: 25.08.2006

erstellt am: 20. Sep. 2006 12:43    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities

Hi,
Ich habe das Problem das wenn meine Simulation auf einer anderen Partition liegt oder in einem anderen Ordner sich befindet, die Exceldatein nicht mehr geöfnet werden kann.

Kleiner Auszug aus dem Quellcode:

Mtm.leseExcelDatei("\\Diplomarbeit Simualtion\Eingangsdaten\AP2.xls", "Tabelle2");
ST4.bearbeitungszeit := str_to_time(MTM[3,42]);

Welchen Befehl gibt es damit die Simulation sich an dem Ordner "Diplomarbeit Simualtion" orientiert. In der Hilfe sind nur Beispiele mit festen Pfaden. Da sich die Datei Namen und auch die Ordnerstruktur nicht ändert, hilft mir der im Forum besprochene Thread nicht weiter. ( http://ww3.cad.de/foren/ubb/Forum262/HTML/000108.shtml#000002  )

Hatte bereits versucht ~./ oder //*.*/ aber das geht so wohl nicht. Auch auf gute alte Befehle ala "cd.. /Eingangsdaten/Ap2.xls" fällt er nich rein 

Hoffe ihr könnt mir helfen.
Patrick

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP


Ex-Mitglied

erstellt am: 20. Sep. 2006 13:14    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat

versuchs mal so  (am Beispiel "c:\tmp" &  yyy.xls)

setzeAktuellesVerzeichnis("c:\tmp"); 
xtab.leseExcelDatei("yyy.xls", "Tabelle1");

oder

xtab.leseExcelDatei("c:\tmp\yyy.xls", "Tabelle1");

Pruefe auch mal den eingegebenen Pfad.
Das "a" und "l" sind in "Simulation" vertauscht.


Gruss

------------------
Der Simulator

pom
Mitglied
Dipl.-Ing. (FH)


Sehen Sie sich das Profil von pom an!   Senden Sie eine Private Message an pom  Schreiben Sie einen Gästebucheintrag für pom

Beiträge: 182
Registriert: 25.08.2006

erstellt am: 20. Sep. 2006 13:22    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities

Aber damit mach ich mich ja wieder von der Festplatte abhängig (als beispiel c:\Temp). Die Datein werden bei mir auch eingelesen das funktioniert, nur auf anderen Rechnern bzw. Festplatten nicht.

Wichtig ist das der Standort des Ordners flexibel sein muss. Es darf sich also nur auf den Hauptordner beziehen.

Muss ich wirklich immer den kompleten Pfad angeben?

MFG
Patrick

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP


Ex-Mitglied

erstellt am: 20. Sep. 2006 13:35    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat

gleiches in grün...

versuchs mal so  (am Beispiel "\\\servername\pfad" &  yyy.xls)
setzeAktuellesVerzeichnis("\\\servername\pfad"); 
xtab.leseExcelDatei("yyy.xls", "Tabelle1");

oder

xtab.leseExcelDatei("\\\servername\pfad\yyy.xls", "Tabelle1");

Gruss

------------------
Der Simulator

pom
Mitglied
Dipl.-Ing. (FH)


Sehen Sie sich das Profil von pom an!   Senden Sie eine Private Message an pom  Schreiben Sie einen Gästebucheintrag für pom

Beiträge: 182
Registriert: 25.08.2006

erstellt am: 20. Sep. 2006 14:23    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities

Ok glaub wir haben an einander vorbei geredet oder ich hab es nicht ganz verstanden  . Aber wie das nun mal so ist wenn man versucht jemand etwas zu erklären denkt man nochmal genau nach und tada mir ist ein Modell eingefallen das du mir mal erstellt hast bei meinem ersten post hier im Forum! Dann hab ich los gelegt, nochmal danke für die Hilfe damals 

Auszug

x:=strlen("Modell\7177version26 MTM fertig.spp");
y:=strlen(modelfile);
y:=y-x+1;
verzeichnis:= modelfile;
verzeichnis:= omit(verzeichnis,y,x);
setzeAktuellesVerzeichnis(verzeichnis);
print verzeichnis;


Mtm.leseExcelDatei("Eingangsdaten\AP2.xls", "Tabelle2");
ST4.bearbeitungszeit := str_to_time(MTM[3,42]);


Das Model sucht sich nun selber den Pfad, es ist also absolut egal wo die Datei geöffnet wird so lange sie in der Ordnerstruktur ist. Getestet und funtzt 

Mich stört nur noch die erste Zeile da die nicht wirklich flexibel ist.
x:=strlen("Modell\7177version26 MTM fertig.spp");
gibt es einen Befehl nur den Namen des Models auszulesen? dann wär alles super!

MFG
Patrick

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP


Ex-Mitglied

erstellt am: 20. Sep. 2006 18:49    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat

ja, es geht noch etwas flexibler und vor allem kompakter!

Mit dem (DOS-) Wissen, dass ".." das uebergeordnete (Datei-)Verzeichnis bezeichnet, reduziert  sich Dein 9-Zeiler auf 2 Zeilen.
.
.
.
Mtm.leseExcelData(modelfile+"\\..\\..\\Eingangsdaten\\AP2.xls","Tabelle2");
st4.bearbeitungszeit:= ...


Gruss

------------------
Der Simulator

pom
Mitglied
Dipl.-Ing. (FH)


Sehen Sie sich das Profil von pom an!   Senden Sie eine Private Message an pom  Schreiben Sie einen Gästebucheintrag für pom

Beiträge: 182
Registriert: 25.08.2006

erstellt am: 21. Sep. 2006 09:08    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities

Moin,
das echt der Hammer! Ich hab 3 Stunden gebraucht damit das Funtzt und schreibst mir da nen Einzeiler hin 
Das ist echt super! Kann ich noch was in meine Arbeit schreiben: "Wie macht man es am besten nicht (siehe 9 Zeiler)"   
Also nochmal mal vielen Dank! für die Hilfe.

MFG
Patrick

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

Anzeige.:

Anzeige: (Infos zum Werbeplatz >>)

Darstellung des Themas zum Ausdrucken. Bitte dann die Druckfunktion des Browsers verwenden. | Suche nach Beiträgen

nächster neuerer Beitrag | nächster älterer Beitrag
Antwort erstellen


Diesen Beitrag mit Lesezeichen versehen ... | Nach anderen Beiträgen suchen | CAD.de-Newsletter

Administrative Optionen: Beitrag schliessen | Archivieren/Bewegen | Beitrag melden!

Fragen und Anregungen: Kritik-Forum | Neues aus der Community: Community-Forum

(c)2023 CAD.de | Impressum | Datenschutz