Dennis는 RGB 값으로 세 개의 셀 (A1 : A3)을 채우고 다른 셀 (C1)이 해당 값에 따라 색상을 표시하도록하려고합니다. 그는 이것을 할 수있는 쉬운 방법이 있는지 궁금합니다.

이 작업을 수행하는 가장 쉬운 방법은 A1 : A3의 값을 가져온 다음 해당 값을 기반으로 셀 C1의 색상을 수정하는 매크로를 사용하는 것입니다.

이상적으로는 매크로가 소스 셀의 값이 0에서 255 사이의 범위에 있는지 확인해야합니다. 다음 매크로는이 목적에 적합합니다.

Private Sub Worksheet_Change(ByVal Target As Range)

If Not Intersect(Target, Range("A1:A3")) Is Nothing Then         lRed = Abs(Range("A1").Value) Mod 256         lGreen = Abs(Range("A2").Value) Mod 256         lBlue = Abs(Range("A3").Value) Mod 256

Range("C1").Interior.Color = RGB(lRed, lGreen, lBlue)

End If End Sub

이 매크로는 셀이있는 워크 시트의 코드에 추가되어야합니다. (시트 탭을 마우스 오른쪽 단추로 클릭하고 코드보기를 선택한 다음 거기에 매크로를 추가하십시오.) A1, A2 또는 A3 셀이 변경 될 때마다 자동으로 실행되는 이벤트 처리기입니다.

해당 셀의 값은 셀 내용의 절대 값을 취하고 나머지 (모듈로)

를 사용하여 0에서 255 사이가되도록합니다. 256으로 나누는 것입니다.

매크로는 A1 : A3 (RGB 값) 범위의 값을 수동으로 변경할 때만 작동합니다. 해당 범위의 값이 수식의 결과이면 셀을 수동으로 변경하지 않기 때문에 제대로 작동하지 않습니다. 이 경우 다음과 같이 더 간단한 매크로 수정을 사용해야합니다.

Private Sub Worksheet_Change(ByVal Target As Range)

lRed = Abs(Range("A1").Value) Mod 256     lGreen = Abs(Range("A2").Value) Mod 256     lBlue = Abs(Range("A3").Value) Mod 256

Range("C1").Interior.Color = RGB(lRed, lGreen, lBlue)

End Sub

이 버전은 변경이 발생하는 위치에 관계없이 워크 시트에서 무언가가 변경 될 때마다 색상을 업데이트합니다.

_ 참고 : _

이 페이지 (또는 ExcelTips 사이트의 다른 페이지)에 설명 된 매크로를 사용하는 방법을 알고 싶다면 유용한 정보가 포함 된 특별 페이지를 준비했습니다.

link : / excelribbon-ExcelTipsMacros [새 브라우저 탭에서 특별 페이지를 열려면 여기를 클릭하세요].

_ExcelTips_는 비용 효율적인 Microsoft Excel 교육을위한 소스입니다.

이 팁 (9092)은 Office 365의 Microsoft Excel 2007, 2010, 2013, 2016, 2019 및 Excel에 적용됩니다. 여기에서 Excel의 이전 메뉴 인터페이스에 대한이 팁 버전을 찾을 수 있습니다.

link : / excel-Showing_RGB_Colors_in_a_Cell [셀에 RGB 색상 표시].