Si tuviera una matriz como la siguiente:
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
¿Existe algún método para revisar y reemplazar los elementos diagonales que contienen un 1 por un 0?
Esta es una matriz simplificada, con la que estoy trabajando es en realidad 2965x2965, por lo que espero aplicar la fórmula a ese tamaño de matriz, pero solo de modo que las diagonales cambien y todo lo demás permanezca igual.
Respuesta1
Puede que me falte algo, pero esto parece hacer lo que necesitas:
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