Entwickler-Ecke
Delphi Language (Object-Pascal) / CLX - Excel soll mitzählen
D. Annies - Di 07.08.07 09:15
Titel: Excel soll mitzählen
Hi, Delpher,
ich schreibe eine Excel-Datei fort.
Mit dem Befehl
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 - Di 07.08.07 09:23
Moin,
versuchs mal so:
.Formula:= '=Summe(E3:E' + r + ');
D. Annies - Di 07.08.07 09:41
Moin, ene,
danke: ich habe geschrieben:
Delphi-Quelltext
1:
| excel.cells[3,3].Formula:= '=Summe(C3:C' + inttostr(r) + ')'; |
mal sehen, ob das klappt..
Gruß, Detlef
azrael_7 - 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
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
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....
ene - Di 07.08.07 10:35
Versuchs mal sonst mit einem = vor der eigentlichen Funktion.
azrael_7 - 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)
D. Annies - 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 - 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:
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.
D. Annies - Di 07.08.07 11:38
hi, habe jetzt folgendes gefunden:
Delphi-Quelltext
1:
| Excel.workbooks[1].worksheets[1].Range['C4','C4'].Formula := '=SUMME(C6:C' + inttostr(r+1) + ')'; |
D. Annies - Di 07.08.07 11:42
klappt auch nicht.
ich habe
Delphi-Quelltext
1:
| excel.cells[4,3].Formula := '=SUMME(C6:C' + inttostr(r+1) + ')'; |
was ist daran noch falsch???
azrael_7 - Di 07.08.07 11:47
versuch mal:
Delphi-Quelltext
1:
| excel.Worksheet.cells[4,3].Formula := '=SUM(C6:C' + inttostr(r+1) + ')'; |
Bei mir hats damit geklappt
D. Annies - 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
Entwickler-Ecke.de based on phpBB
Copyright 2002 - 2011 by Tino Teuber, Copyright 2011 - 2025 by Christian Stelzmann Alle Rechte vorbehalten.
Alle Beiträge stammen von dritten Personen und dürfen geltendes Recht nicht verletzen.
Entwickler-Ecke und die zugehörigen Webseiten distanzieren sich ausdrücklich von Fremdinhalten jeglicher Art!