XLFontSetColor(xlHandle As Integer, fontHandle As Integer, value As String)

 

Sets the color of a font.

 

The font fontHandle must have been added to the Excel document xlHandle beforehand. fontHandle is obtained by a call to XLAddFont.

 

 

Parameters:

 

Name

Type

Description

xlHandle

Integer

A handle to an Excel document. The document must have been created by using the function XLCreateFromTemplate and the Integer we obtained from it is used as xlHandle here.

fontHandle

Integer

A handle to a font object. The fontHandle is is obtained by a call to XLAddFont

Value

String

A color string of format &cRRGGBB where RR is the RGB value of Red in hexadecimal, GG is the value Green in hexadecimal, and BB is the value of Blue in hexadecimal.

 

You can choose the color that you want to assign to a font by cmd+clicking on the color picker textfield at the bottom of the Script Manager Window, to open the Color picker. If you choose the color via the Color picker, the hexadecimal color value will be added to the textfield and you can copy/paste it to your script.

 

Example for red color: &h00FF0000

 

Available in:

 

WindowMain

WindowLink

YES

NO

 

Used in:

 

XojoScript Name

GUID

Save as Excel sheet : seminar invoice list

6DDAFA87-2862-4129-8416-CBD57C5CDF9A

 

Hint: You can find more references to XojoScripts which make use of this function by sending the following SQL statement to the database:

Select id,GUID, ScriptName,ScriptCode from im_scripts where ScriptCode Like '%XLFontSetColor%'

 

Example XojoScript:

 

Dim hXL As Integer

 

// Get Handle to newly created Excel file

hXL = XLCreateFromTemplate("myXLtest.xls")

 

// Set default font for Excel sheet

XLSetDefaultFont(hXL,"Arial Narrow",8)

 

Dim listfont As Integer = XLAddFont(hXL,"Arial Narrow",8)

XLFontSetColor(hXL,listfont,"&h00FF0000"// red

 

Dim listformat As Integer = XLAddFormat(hXL)

Dim numberformat As Integer = XLAddFormat(hXL)

 

// Add font to formats

XLFormatSetFont(hXL,listformat,listfont)

XLFormatSetFont(hXL,numberformat,listfont)

 

// Set properties of listformat

XLFormatSetBorderBottom(hXL,listformat,"Hair")

 

// Set properties of numberformat

XLFormatSetAlign(hXL,numberformat,"AlignH","AlignHRight")

XLFormatSetNumFormat(hXL,numberformat,"NumformatNumberD2SepNegbraRed")

XLFormatSetBorderBottom(hXL,numberformat,"Hair")

 

If hXL > -1 Then

Dim i As integer

For i = 2 To 100

XLWriteString(hXL,i,0,"Zeile " + Str(i),listformat)

XLWriteNumber(hXL,i,1,i,numberformat)

XLWriteBoolean(hXL,i,2,i)

Next

 

XLSave(hXL)

XL(hXL,"launch")

End If