Autor Beitrag
D. Annies
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 1843

windows 7
D6 Enterprise, D7 Pers und TD 2006
BeitragVerfasst: Di 07.08.07 09:15 
Hi, Delpher,

ich schreibe eine Excel-Datei fort.

Mit dem Befehl

ausblenden Delphi-Quelltext
1:
r := Excel.workbooks[1].worksheets[1].UsedRange.rows.count;					


bekomme ich die Anzahl der beschriebenen Zeilen in Excel.
Also kann ich in excel.cells[r+1,...] den nächsten Eintrag machen (fortschreiben).

Aber wie kriege ich Excel dazu, die Formel zur Summenberechnung auch anzupassen. Diese ist in excel.cells[3,5] fest eingetragen.

Bisher steht da die Formel: =summe(e3:e18)
Die muss sich ja mitändern, so dass e19 mit in die Berechnung einbezogen wird.

Wer hat davon einen Plan??

Danke für Hilfe,
Detlef
ene
ontopic starontopic starontopic starontopic starontopic starofftopic starofftopic starofftopic star
Beiträge: 779
Erhaltene Danke: 1

Vista, XP, W2K
Delphi, .Net, Deutsch und Englisch
BeitragVerfasst: Di 07.08.07 09:23 
Moin,

versuchs mal so:

.Formula:= '=Summe(E3:E' + r + ');

_________________
Wir, die guten Willens sind, geführt von Ahnungslosen, Versuchen für die Undankbaren das Unmögliche zu vollbringen.
Wir haben soviel mit so wenig so lange versucht, daß wir jetzt qualifiziert sind, fast alles mit Nichts zu bewerkstelligen.
D. Annies Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 1843

windows 7
D6 Enterprise, D7 Pers und TD 2006
BeitragVerfasst: Di 07.08.07 09:41 
Moin, ene,

danke: ich habe geschrieben:

ausblenden Delphi-Quelltext
1:
excel.cells[3,3].Formula:= '=Summe(C3:C' + inttostr(r) + ')';					


mal sehen, ob das klappt..

Gruß, Detlef
azrael_7
ontopic starontopic starontopic starontopic starofftopic starofftopic starofftopic starofftopic star
Beiträge: 78

Windows Vista
D2005 Pers. [de]
BeitragVerfasst: Di 07.08.07 10:30 
Hab grad ein ähnlich ausgartetes Problem und suchte auch verzweifelt nach der Lösung, die Formel in eine Zelle einzutragen... Excel wollte die mir nicht ausrechnen...

Bin in mehreren Versuchen quasi zu der gleichen Lösung gekommen, wobei mir aber aufgefallen ist, dass ich mit

ausblenden Delphi-Quelltext
1:
 Worksheet.Cells[tmpposition, 2].Formula := '=SUMME(A1:A100)';					


nicht weit komme... die von mir genutzte Excel-Version springt nur auf den englischen Befehl

ausblenden Delphi-Quelltext
1:
 Worksheet.Cells[tmpposition, 2].Formula := '=SUM(A1:A100)';					


an... mit SUMME bekomme ich nur #NAME? in den zellen angezeigt... evtl. hilft das dir auch weiter...´


Edit: siehe nachfoldenden Beitrag....

_________________
-·- Es gibt Leute die bringen Freude, wohin sie gehen -·-
-·- und es gibt Leute, die bringen Freude, wenn sie gehen -·-


Zuletzt bearbeitet von azrael_7 am Di 07.08.07 10:37, insgesamt 1-mal bearbeitet
ene
ontopic starontopic starontopic starontopic starontopic starofftopic starofftopic starofftopic star
Beiträge: 779
Erhaltene Danke: 1

Vista, XP, W2K
Delphi, .Net, Deutsch und Englisch
BeitragVerfasst: Di 07.08.07 10:35 
Versuchs mal sonst mit einem = vor der eigentlichen Funktion.

_________________
Wir, die guten Willens sind, geführt von Ahnungslosen, Versuchen für die Undankbaren das Unmögliche zu vollbringen.
Wir haben soviel mit so wenig so lange versucht, daß wir jetzt qualifiziert sind, fast alles mit Nichts zu bewerkstelligen.
azrael_7
ontopic starontopic starontopic starontopic starofftopic starofftopic starofftopic starofftopic star
Beiträge: 78

Windows Vista
D2005 Pers. [de]
BeitragVerfasst: Di 07.08.07 10:37 
Ups... :oops: ja... C&P will gelernt sein :roll:


hab natürlich das '=' im Text drinne gehabt... trotzdem wills net mit SUMME... (habs oben im Code editiert)

_________________
-·- Es gibt Leute die bringen Freude, wohin sie gehen -·-
-·- und es gibt Leute, die bringen Freude, wenn sie gehen -·-
D. Annies Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 1843

windows 7
D6 Enterprise, D7 Pers und TD 2006
BeitragVerfasst: Di 07.08.07 11:17 
bei mir läufts auch noch nicht, Fehlermeldung:

Die Formel enthält Text, der nicht interpretiert werden kann

Brüt, brüt ...

P.S. wie ist das gemeint: versuchs mal mit einem = vor der eigentlichen Formel? denn auch ich kriege #TEXT
ene
ontopic starontopic starontopic starontopic starontopic starofftopic starofftopic starofftopic star
Beiträge: 779
Erhaltene Danke: 1

Vista, XP, W2K
Delphi, .Net, Deutsch und Englisch
BeitragVerfasst: Di 07.08.07 11:34 
Du fügst dort eine Formel in eine Zelle ein und eine Formel beginnt in Excel mit einem =, also muss das = auch Teil des Strings sein, denn sonst steht dort nur die Formel und das kann Excel nicht interpretieren. Also muss der Code auch entsprechend aufgebaut sein:

ausblenden Delphi-Quelltext
1:
.Formula:= '=Summe(E3:E' + IntToStr(r) + ')';					


Manchmal hakt es dann auch bei den Hochkommatas, und man muss sich mit doppelten behelfen, allerdings habe ich das erst bei relativen Formeln erlebt.

_________________
Wir, die guten Willens sind, geführt von Ahnungslosen, Versuchen für die Undankbaren das Unmögliche zu vollbringen.
Wir haben soviel mit so wenig so lange versucht, daß wir jetzt qualifiziert sind, fast alles mit Nichts zu bewerkstelligen.
D. Annies Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 1843

windows 7
D6 Enterprise, D7 Pers und TD 2006
BeitragVerfasst: Di 07.08.07 11:38 
hi, habe jetzt folgendes gefunden:

ausblenden Delphi-Quelltext
1:
Excel.workbooks[1].worksheets[1].Range['C4','C4'].Formula := '=SUMME(C6:C' + inttostr(r+1) + ')';					
D. Annies Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 1843

windows 7
D6 Enterprise, D7 Pers und TD 2006
BeitragVerfasst: Di 07.08.07 11:42 
klappt auch nicht.

ich habe
ausblenden Delphi-Quelltext
1:
excel.cells[4,3].Formula := '=SUMME(C6:C' + inttostr(r+1) + ')';					

was ist daran noch falsch???
azrael_7
ontopic starontopic starontopic starontopic starofftopic starofftopic starofftopic starofftopic star
Beiträge: 78

Windows Vista
D2005 Pers. [de]
BeitragVerfasst: Di 07.08.07 11:47 
versuch mal:

ausblenden Delphi-Quelltext
1:
excel.Worksheet.cells[4,3].Formula := '=SUM(C6:C' + inttostr(r+1) + ')';					


Bei mir hats damit geklappt

_________________
-·- Es gibt Leute die bringen Freude, wohin sie gehen -·-
-·- und es gibt Leute, die bringen Freude, wenn sie gehen -·-
D. Annies Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 1843

windows 7
D6 Enterprise, D7 Pers und TD 2006
BeitragVerfasst: Di 07.08.07 12:15 
Hi, azrael_7

na endlich hats mit dieser Idee geklappt!

sum statt summe :? :twisted: :idea: 8)

Grüße aus Lübeck,
Detlef