Autor Beitrag
Flamefire
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Beiträge: 1207
Erhaltene Danke: 31

Win 10
Delphi 2009 Pro, C++ (Visual Studio)
BeitragVerfasst: Mo 09.07.07 16:22 
Wie kann ich eine Excel-Zelle einfärben, wenn ich die Farbe über ein ColorDialog in Delphi auswählen möchte?
Excel kennt ja nicht alle Farben, oder?
JensLaskowski
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Beiträge: 168

Win XP
BDS 2006 Architect
BeitragVerfasst: Mo 09.07.07 16:25 
Zeichne einfach ein Makkro mit Excel auf und schau es dir dann an. Dann hast du denn Code für das ändern der Farbe.

Mit freundlichen Grüßen
JensLaskowski

_________________
Nichtstun macht nur dann Spaß, wenn man eigentlich viel zu tun hätte.
Flamefire Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Beiträge: 1207
Erhaltene Danke: 31

Win 10
Delphi 2009 Pro, C++ (Visual Studio)
BeitragVerfasst: Mo 09.07.07 16:29 
es geht ja nicht um das ändern der farbe sondern über die farbe selbst
excel hat nur 56 Farben
aber der colordialog aus delphi liefert 32bit
dann ist das problem, wie ich die farbe von delphi in excel umwandle

habs durch zufall gefunden: statt "colorindex" "color"
JensLaskowski
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Beiträge: 168

Win XP
BDS 2006 Architect
BeitragVerfasst: Mo 09.07.07 16:36 
du müsstets einfach in Excel gucken können, wie die Farbe heißt...und die schreibst du dann in deinen Quellcode, denn der Code wird ja nicht in Delphi ausgeführt sondern gleich in Excel.

So war es bei mir mit Word.

Mit freundlichen Grüßen
JensLaskowski

_________________
Nichtstun macht nur dann Spaß, wenn man eigentlich viel zu tun hätte.
Agawain
ontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic star
Beiträge: 460

win xp
D5, MySQL, devxpress
BeitragVerfasst: Mo 09.07.07 16:46 
Hi

ne, das geht glaub ich nicht, weil die Farbe nur über den Index der Standardfarben zugreifbar macht.

Aber wenn mann die Delphi-Farbe in einen RGB-Wert umwandelt, dann soltte Folgendes funktionieren

ausblenden Delphi-Quelltext
1:
 ActiveWorkbook.Colors(1) := RGB(45217102);					


Damit kann der ersten Farbe immer ein anderer Wert zugewiesen werden, oder man spricht halt alle Indizes an.

Gruß

Aga
JoelH
ontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic starofftopic star
Beiträge: 806
Erhaltene Danke: 17

Win10
Delphi Alexandria 11.2 Patch 1
BeitragVerfasst: Do 15.11.07 18:04 
user profile iconAgawain hat folgendes geschrieben:
Hi

ne, das geht glaub ich nicht, weil die Farbe nur über den Index der Standardfarben zugreifbar macht.

Aber wenn mann die Delphi-Farbe in einen RGB-Wert umwandelt, dann soltte Folgendes funktionieren

ausblenden Delphi-Quelltext
1:
 ActiveWorkbook.Colors(1) := RGB(45217102);					


Damit kann der ersten Farbe immer ein anderer Wert zugewiesen werden, oder man spricht halt alle Indizes an.

Gruß

Aga

Ist der Wert 1 dann der, den ich hier
ausblenden Delphi-Quelltext
1:
app_Excel.Selection.Interior.colorindex := farbe;					

als Farbe übergeben müsste, also quasi
ausblenden Delphi-Quelltext
1:
app_Excel.Selection.Interior.colorindex := 1;					

und ich ich bekomme deinen RGB(45, 217, 102) als Hintergrundfarbe neiner selektierten Zellen?

_________________
mfg. Joel