AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

exel tabelle erstellen

Ein Thema von happyaura · begonnen am 15. Mai 2006 · letzter Beitrag vom 17. Mai 2006
Antwort Antwort
happyaura

Registriert seit: 12. Jan 2005
Ort: Hamburg
73 Beiträge
 
Delphi 6 Personal
 
#1

exel tabelle erstellen

  Alt 15. Mai 2006, 23:56
moinmoin,

gibt es eine möglichst einfache möglichkeit, einen wert in eine Exeltabelle aus einem Delphi programm einzufügen, bzw die tabelle neu zu erstellen?
Als programmablauf stelle ich mit in etwa sowas vor:
ein wert fällt vom himmel und will gerne in eine exeltabelle eingefügt werden. zeile und spalte können ggf bekannt sein, alternativ ins erste freie feld der xten spalte. danach wird die datei geschlossen, bis der nächste wert vom himmel fällt.

Im moment realisiere ich das so, dass ich die zeilen in eine textdatei schreibe und die spalten mit semikolon trenne. so lässt sich das gut in exel importieren, aber vielleicht gibt es ja einen tollen alternativweg, der mir diesen schritt erspart.

Ist nur ein nice-to-have Feature, dementsprechen wollt ich eigentlich nicht zu viel Arbeit reinstecken müssen. Vielleicht hat ja jemand einen tolle idee für mich. Die suche im forum hat mich noch nicht wirklich weitergebracht. Das problem ist, dass die Einzutragenen Felder zeitlich sehr weit auseinander liegen und es durchaus passieren kann, dass das Programm zwischendurch geschlossen und neu gestartet werden kann...

Andere Frage, wieviele zeilen hat ein Exelblatt? ich arbeite mit Open Office, da hab ich 65536 zeilen. Vielleicht könnt ihr mir sagen, wie das in verschiedenen Exelversionen aussieht.

Besten Dank,
Martin
  Mit Zitat antworten Zitat
jensw_2000
(Gast)

n/a Beiträge
 
#2

Re: exel tabelle erstellen

  Alt 16. Mai 2006, 00:52
Es wird für dich kaum Alternativen geben, da du mit D6 Personal Edition arbeitest.
Dort fehlen TDataset und Nachfahren.

Bei den Professional Versionen (und höher) könntest du dein Problem über ADO lösen.
Hier eine kleine Erklärung dazu.
In der Suche findest du unter den Stichwörtern EXCEL + ADO weitere Tips, die du leider nicht benutzen kannst.

Was dich eventuell weiterbringen kann ist BIFF.
Dazu findest du über die Suche einige brauchbare Grundlagen.
BIFF ermöglicht es dir, "native" Excel Dateien zu lesen und zu schreiben.

Ein kleiner Nachteil ist, das BIFF XLS Dateien mit nur einer "Arbeitsbereichsseite" (ohne Arbeitsmappe) erzeugt.
Excel kommt damit zurecht. Wenn du die XLS mit anderen Programmen verarbeiten willst, kann es aber stellenweise zu Problemen kommen, weil z.B. eine Arbeitsmappe erwartet wird.

XLS Dateien, die mit BIFF erstellt wurden, kannst du z.B. nicht wie oben beschrieben über ADO öffnen ohne diese vorher einmal mit Excel geöffnet und wieder gespeichert zu haben.


Schöne Grüße,
Jens
  Mit Zitat antworten Zitat
Benutzerbild von mikhal
mikhal

Registriert seit: 11. Sep 2003
Ort: Linz am Rhein
796 Beiträge
 
Delphi 11 Alexandria
 
#3

Re: exel tabelle erstellen

  Alt 16. Mai 2006, 06:22
Vielleicht hilft dir die Klasse XLS weiter. Ist Freeware und habe ich vor einiger Zeit im Netz gefunden. Ist nicht wirklich perfekt, reicht aber für einfache Excel-Tabellen aus. Näheres in der Datei XLS-Datei und im Demo.

Grüße
Mikhal
Angehängte Dateien
Dateityp: zip xls_821.zip (6,7 KB, 69x aufgerufen)
Michael Kraemer
Computer erleichtern die Arbeit...
...und die Erde ist eine Scheibe!
  Mit Zitat antworten Zitat
mkinzler
(Moderator)

Registriert seit: 9. Dez 2005
Ort: Heilbronn
39.858 Beiträge
 
Delphi 11 Alexandria
 
#4

Re: exel tabelle erstellen

  Alt 16. Mai 2006, 06:35
Du kannst aber auch OLE verwenden um Excel zu automatisieren und so per API Excel neue Dokumente erzeugen zu lassen oder vorhandenen zu manipulieren (z.B. Daten einfügen).
Markus Kinzler
  Mit Zitat antworten Zitat
happyaura

Registriert seit: 12. Jan 2005
Ort: Hamburg
73 Beiträge
 
Delphi 6 Personal
 
#5

Re: exel tabelle erstellen

  Alt 16. Mai 2006, 18:46
besten Dank für die antworten, ich werd am WE mal schauen, was ich da an möglichkeiten rauspflücken kann. Ich wollt ja zu delphi 2005 wechseln, aber das scheiterte daran, dass ich auf LW C gerade keine 1,3 GB für die .net komponente hatte und nicht so ohne weiteres freischaufeln konnte. in sofern hab ich die idee dann schnell wieder verworfen, delphi6 hats bis jetzt auch immer prima getan.
Gruß Martin
  Mit Zitat antworten Zitat
jensw_2000
(Gast)

n/a Beiträge
 
#6

Re: exel tabelle erstellen

  Alt 16. Mai 2006, 19:45
Ich wollte deine PE nicht "runtermachen". Bitte nicht falsch verstehen.

BIFF ist auch keine so schlechte Variante. Die von mikhal beigefügte XLS Klasse kapselt BIFF.

Der Nachteil ist halt immer nur, das eine via BIFF erzeugte XLS Datei immer nur eine Arbeitsbereichsseite enthält und kein Workbook. Excel konvertieren die Datei, aber andere Applikationen kommen damit nicht zwangsläufig zurecht.







Schöne Grüße,
Jens
  Mit Zitat antworten Zitat
happyaura

Registriert seit: 12. Jan 2005
Ort: Hamburg
73 Beiträge
 
Delphi 6 Personal
 
#7

Re: exel tabelle erstellen

  Alt 17. Mai 2006, 00:58
@jens
hab es auch nicht als angriff gegen mein Delphi empfunden, kam also nicht falsch an.

Ich hab mal das Beispielprojekt von der XLS Klasse überflogen, das könnte schon soweit das richtige sein. Es geht erst einmal darum, nur daten (=messwerte) in eine Tabelle einzutragen. Welche Kurven daraus gebastelt werden und welche Rückschlüsse man aus den Daten zieht, ist dann von Fall zu Fall verschieden. Da werd ich am WE mal schauen, was für Szenarien genau auftreten können und welche davon ggf probleme machen können.

Vielen dank,
Martin
  Mit Zitat antworten Zitat
Antwort Antwort


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 05:31 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz