![]() |
[Excel] OLE und Gruppierungen
Hallo zusammen,
ich benutze in meinem Programm ein Excel-OLE-Object zum Erstellen von Tabellen. Jetzt möchte ich Zeilen gruppieren, finde aber nicht die passende Syntax. So sieht es in VBA aus:
Code:
So geht es in Delphi nicht:
Rows("8:16").Select
Selection.Rows.Group
Delphi-Quellcode:
Gruß Igotcha
excel.sheets[1].rows[iStartGroup,iEndGroup].rows.group; oder
excel.sheets[1].rows[iStartGroup,iEndGroup].group; |
Re: [Excel] OLE und Gruppierungen
Guten Morgen,
gibt es für dieses Problem eine Lösung? Reinhard |
Re: [Excel] OLE und Gruppierungen
Hallo Igotcha,
bei mir scheint folgendes zu funktionieren:
Delphi-Quellcode:
versuchs doch mal damit.
var lRange: String;
... lRange := Format('%d:%d', [iStartGroup, iEndGroup]); excel.sheets[1].Range[lRange].Rows.Group; Gruß Dale |
Re: [Excel] OLE und Gruppierungen
Zitat:
|
Re: [Excel] OLE und Gruppierungen
Hallo,
@Dale: Was sind den richtige Werte für "iStartGroup" und "iEndGroup"? Ist das der "Zellenname" also z.B. "A1"? In meiner Delphi-Version (Delphi 6) benötigt das Range-Objekt zwei Parameter. Leider funktioniert dein Delphi-Quellcode bei mir so nicht :( Hast du noch eine Idee? @Igotcha: Hast du das ganze noch lösen können? Auch wenn es schon zwei Jahre her ist :) Reinhard |
Re: [Excel] OLE und Gruppierungen
@Reinhard:
iStartGroup und iEndGroup sind Integer-Variablen, die für die erste und letzte Zeilennummer stehen, die gruppiert werden sollen. Gruß Dale |
Re: [Excel] OLE und Gruppierungen
Folgendes funktioniert leider bei mir nicht:
excel.sheets[1].Range[1,2].Rows.Group; |
Re: [Excel] OLE und Gruppierungen
'Range' erwartet einen String!
Also:
Delphi-Quellcode:
Gruß Dale
excel.sheets[1].Range['1,2'].Rows.Group;
|
Re: [Excel] OLE und Gruppierungen
Hallo,
Range benötigt bei mir zwei Parameter und Group benötigt vier Parameter. Bei mir sieht das dann so aus: fWorkSheet.Range[1,2].Rows.Group(EmptyParam, EmptyParam, EmptyParam, EmptyParam); Funktioniert aber leider nicht :( Reinhard |
Re: [Excel] OLE und Gruppierungen
von welchen Typ ist "fWorkSheet"?
|
Re: [Excel] OLE und Gruppierungen
Ich hab den Quellcode jetzt gerade nicht da, aber ich glaube der Typ wa "WorkSheet_".
|
Re: [Excel] OLE und Gruppierungen
möglicherweise liegt da das Problem, denn
Delphi-Quellcode:
liefert ein Objekt vom Typ "Sheets" zurück.
excel.sheets[1]
Gruß Dale |
Re: [Excel] OLE und Gruppierungen
Guten Morgen,
ich hab es jetzt noch mal wie ![]() Ich nutze hier in meiner Anwnedung die Excel2000.pas und die TExcelApplication und damit funktioniert es leider nicht. Ich möchte jetzt aber nicht alles auf Ole umstellen. In diesem Fall werde ich die Gruppierung einfach weglassen. Eine Kleinigkeit ist mir noch aufgefallen, die Zeile für die Gruppierung muss so aussehen:
Delphi-Quellcode:
Dann hat sie bei mir funktioniert :)
excel.sheets[1].Range['1:2'].Rows.Group;
Trotzdem danke für die Hilfe. Reinhard |
AW: [Excel] OLE und Gruppierungen
Hallo,
weiß jemand wie die Syntax lauten soll, wenn man mit Variablen arbeitet? Hier ein Beispiel: var bereich : string; zeile1, zeile2 : integer; ... bereich := Format(#39 + '%d:%d' + #39, [zeile1, zeile2]); excel.sheets[1].Range[bereich].Rows.Group; -> Hier bekomme ich den OLE-Fehler 800A03EC Danke im Voraus für Eure Tipps. |
AW: [Excel] OLE und Gruppierungen
Zitat:
|
AW: [Excel] OLE und Gruppierungen
Lass die #39 weg, denn im String seh ich hier nirgendwo Welche.
|
AW: [Excel] OLE und Gruppierungen
Super! Vielen Dank.
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 21:34 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