대각선을 따라 요소 변경하기

대각선을 따라 요소 변경하기

아래와 같은 행렬이 있다면:

1 0 1 0 0
0 0 1 0 0
1 1 1 1 1
1 1 1 0 1
0 0 0 0 1

1을 포함하는 대각선 요소를 0으로 교체하는 방법이 있습니까?

이것은 단순화된 행렬입니다. 제가 작업하고 있는 것은 실제로 2965x2965이므로 해당 행렬 크기에 공식을 적용하고 싶지만 대각선은 변경되고 다른 모든 것은 동일하게 유지됩니다.

답변1

뭔가 빠졌을 수도 있지만 이것이 필요한 작업을 수행하는 것 같습니다.

Sub OneToZero()
    Dim N As Long, i As Long
    N = Columns.Count
    For i = 1 To N
        If Cells(i, i).Value = 1 Then Cells(i, i) = 0
    Next i
End Sub

관련 정보