![更改沿對角線的元素](https://rvso.com/image/1585704/%E6%9B%B4%E6%94%B9%E6%B2%BF%E5%B0%8D%E8%A7%92%E7%B7%9A%E7%9A%84%E5%85%83%E7%B4%A0.png)
如果我有一個如下所示的矩陣:
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