|
| Hvordan integrerer jeg simplest en tabel i~ Fra : Ukendt |
Dato : 18-03-08 16:13 |
|
Hej.
Jeg har en Excel fil med en tabel bestående af cirka 100 rækker og 7
kolonner.
Formålet med tabellen er, at denne skal anvendes som en simpel read-only
database med nogle værdier.
Når brugeren i en combobox vælger et item, som svarer til en værdi i kolonne
A i tabellen, så skal værdierne i de 6 andre kolonner anvendes til noget
beregning.
På forhånd tak.
| |
Uffe Kousgaard (18-03-2008)
| Kommentar Fra : Uffe Kousgaard |
Dato : 18-03-08 16:47 |
|
"Michael Vinther" <nomail> wrote in message
news:47dfdbf1$0$1987$ba624c82@nntp02.dk.telia.net...
> Hvordan integrerer jeg simplest en tabel i Excel i mit Delphi projekt ?
Det kommer an på, om du har excel installeret på computeren eller om det
også skal virke uden.
| |
Ukendt (18-03-2008)
| Kommentar Fra : Ukendt |
Dato : 18-03-08 18:02 |
|
"Uffe Kousgaard" <oh@no.no> skrev i en meddelelse
news:47dfe408$0$90275$14726298@news.sunsite.dk...
> "Michael Vinther" <nomail> wrote in message
> news:47dfdbf1$0$1987$ba624c82@nntp02.dk.telia.net...
>
>> Hvordan integrerer jeg simplest en tabel i Excel i mit Delphi projekt ?
>
> Det kommer an på, om du har excel installeret på computeren eller om det
> også skal virke uden.
Hej Uffe.
Løsningen skal virke uden Excel. Allerhelst søges en måde, hvorpå dataene
kan integreres i exe-filen allerede inden distribution. Dataene er read-only
og skal ikke helst ikke kunne tilgås (læses eller rettes) af brugerne.
Alternativt have det som en fil, der følger med exe-filen, så det er nemt at
opdatere (blot at udskifte filen).
Men igen skal det ikke være en excel-fil, der skal følge med, da den kræver
Excel og er nem at åbne og læse/rette.
| |
Uffe Kousgaard (18-03-2008)
| Kommentar Fra : Uffe Kousgaard |
Dato : 18-03-08 23:14 |
|
"Michael Vinther" <nomail> wrote in message
news:47dff4fc$0$5032$ba624c82@nntp06.dk.telia.net...
>
> Alternativt have det som en fil, der følger med exe-filen, så det er nemt
> at opdatere (blot at udskifte filen).
Så kan du lave din egen type med de 7 felter og lade den eksterne fil være
af typen "file of mintype". Indholdet af filen læser du så ind ved opstart.
Eller det kan være en CSV fil, som du kan læse med TStringList, som kan læse
én linie af gangen og automatisk adskille data. Eller en INI fil med en
masse data.
Muligheder er der nok af.
Hvis data ikke må kunne rettes af brugerne, så lav et lille program, som
automatisk gemmer data som et ekstra unit med en masse konstanter. Så kræver
det blot en rekompilering for at opdatere data.
Her er en lidt forsimplet udgave af noget af min kode. Det er et statisk
array med en masse data. Dit lille ekstra program skal blot kunne finde ud
af, at formatere data som vist nedenfor:
type
Tcoord=record
ID,ellipsoid: smallint;
x,y,z,p0,p1,p2,p3,p4: double;
end;
const
coordLIST: array [1..3] of Tcoord =
(
(ID:0; ellipsoid:29; X:0; Y:0; Z:0; p0: 0; p1: 0; p2: 0; p3: 0; p4: 0),
(ID:1; ellipsoid:6; X:-162; Y:-12; Z:206; p0: 0; p1: 0; p2: 0; p3: 0; p4:
0),
(ID:2; ellipsoid:3; X:-43; Y:-163; Z:45; p0: 0; p1: 0; p2: 0; p3: 0; p4: 0)
);
| |
Mogens Hansen (20-03-2008)
| Kommentar Fra : Mogens Hansen |
Dato : 20-03-08 11:46 |
|
"Michael Vinther" <nomail> wrote in message
news:47dfdbf1$0$1987$ba624c82@nntp02.dk.telia.net...
[8<8<8<]
> Når brugeren i en combobox vælger et item, som svarer til en værdi i
> kolonne A i tabellen, så skal værdierne i de 6 andre kolonner anvendes til
> noget beregning.
Du kan måske have glæde af DevExpress ExpressSpreadSheet
http://www.devexpress.com/Products/VCL/ExSpreadSheet/
men det lyder som om at deres QuantumGrid
http://www.devexpress.com/Products/VCL/ExQuantumGrid/
også kan være relevant.
Jeg har gode erfaringer med DevExpress kontroller. De har god kvalitet, stor
fleksibilitet og kan linkes statisk ind i applikationen, så det er simpelt
at installere.
--
Venlig hilsen
Mogens Hansen
| |
|
|