Hallo Leute,
Wie komme ich von den Farbwerten, die ich aus Excel auslese auf den entsprechenden Hexwert, den ich für die gleiche Färbung von AutoIt-GUI Elementen benötige?
Also etwa von:
Excel-Wert: 65535 <--> AutoIt-Wert: 0xFFFF00
Excel-Wert: 49407 <--> AutoIt-Wert: 0xFFC000
Excel-Wert: 5296274 <--> AutoIt-Wert: 0x92D050
Excel-Wert: 16777215 <--> AutoIt-Wert: 0xFFFFFF
Spoiler anzeigen
AutoIt
#include <Excel.au3>
Color(@ScriptDir & "\1.xlsx")
Func Color($sFile)
Local $oExcel = _Excel_Open()
Local $oWorkbook = _Excel_BookOpen($oExcel, $sFile)
GUICtrlSetBkColor
Local $iCellColor1 = $oExcel.Range("A1").Interior.Color ; Excel-Wert: 65535 <--> AutoIt-Wert: 0xFFFF00
Local $iCellColor2 = $oExcel.Range("A2").Interior.Color ; Excel-Wert: 49407 <--> AutoIt-Wert: 0xFFC000
Local $iCellColor3 = $oExcel.Range("A3").Interior.Color ; Excel-Wert: 5296274 <--> AutoIt-Wert: 0x92D050
Local $iCellColor4 = $oExcel.Range("A4").Interior.Color ; Excel-Wert: 16777215 <--> AutoIt-Wert: 0xFFFFFF
$sMessage = "Hintergrundfarbe A1=" & $iCellColor1 & @CRLF & "Hintergrundfarbe A2=" & $iCellColor2 & @CRLF & _
"Hintergrundfarbe A3=" & $iCellColor3 & @CRLF & "Hintergrundfarbe A3=" & $iCellColor4 & @CRLF
ConsoleWrite($sMessage)
MsgBox(0,"", $sMessage)
_Excel_Close($oExcel)
EndFunc
Alles anzeigen
Im Anhang habe ich das Skript mit der Beispieldatei, anhand derer ich die Werte ausgelesen habe (obwohl sicher unnötig..).