0
Private Sub Worksheet_Calculate()
Dim cell As Range
Set cell = Range("E9")
If IsNumeric(cell) Then
If cell.Value < 0 Then
ActiveSheet.Shapes("Rectangle 2").Fill.ForeColor.RGB = vbRed
Else
ActiveSheet.Shapes("Rectangle 2").Fill.ForeColor.RGB = vbGreen
End If
End If
End Sub
안녕하세요,이 코드를 여러 모양으로 확장하려면 어떻게해야합니까? Set Cell에서 End까지 모든 것을 복사하고 Set 셀 값과 모양을 변경했지만 작동하지 않았습니다.VBA 코드를 여러 모양으로 확장
설명하신 내용이 제대로 작동해야합니다. 'cell'이 이미 셀 타입이고 엑셀 라이브러리의 객체 타입이기 때문에 끔찍한 변수 이름 인'cell'을 변경하고'ActiveSheet.Shapes ("namehere")'의 이름을 변경하는 것은 올바른 방법입니다 다른 셀/도형 조합을 대상으로 삼아 생각할 때 셀 값이 숫자가 아닐 수도 있습니다. 또한'activesheet'는 좋은 선택이 아닙니다. 'Sheets ("yoursheetname"). Shapes ("yourshapename")'는 더 신뢰할 수 있습니다. – JNevill