|
Autor
|
Thema: Exceldatei einlesen (1179 mal gelesen)
|
pom Mitglied Dipl.-Ing. (FH)
 
 Beiträge: 182 Registriert: 25.08.2006
|
erstellt am: 20. Sep. 2006 12:43 <-- editieren / zitieren --> Unities abgeben:         
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 / zitieren -->
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)
 
 Beiträge: 182 Registriert: 25.08.2006
|
erstellt am: 20. Sep. 2006 13:22 <-- editieren / zitieren --> Unities abgeben:         
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 / zitieren -->
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)
 
 Beiträge: 182 Registriert: 25.08.2006
|
erstellt am: 20. Sep. 2006 14:23 <-- editieren / zitieren --> Unities abgeben:         
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 / zitieren -->
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 |

| | Architekt/in (m/w/d), Bauingenieur/in (m/w/d) | Die Bauplanung Möhle GmbH, mit Sitz Am Nordtor 17 in Espelkamp, entwickelt maßgeschneiderte Lösungen für Privatkunden, der Wirtschaft und den Kommunen. Das Architekturbüro plant sowohl die Entstehung von Neubauten, sowie die Sanierung und Renovierung von Gebäuden in Bestand. Im Vordergrund steht dabei die gesamte Betrachtung des Gebäudes hinsichtlich der Nutzbarkeit sowie der Einsatz und die Optimierung des gesamtheitlichen Energieverbrauchs.... | | Anzeige ansehen | Feste Anstellung |
|
pom Mitglied Dipl.-Ing. (FH)
 
 Beiträge: 182 Registriert: 25.08.2006
|
erstellt am: 21. Sep. 2006 09:08 <-- editieren / zitieren --> Unities abgeben:         
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 |