Matrice 100 *100 VBA

bonjour j'ai créer ce code car je veux créer une matrice 100*100 qui 1 dans les sous diagonaux et 0 dans les autres , quelqu'un aurait il une idée de comment faire ? Cordialement.

Sub ForNextDemo9()
Dim mA(1 To 100, 1 To 100) As Integer
Dim i As Integer
Dim j As Integer
For i = 1 To 100
For j = 1 To 100
mA(i, j) = i + j - 4
ActiveSheet.Cells(i, j) = mA(i, j)
Next j
Next i
End Sub

Hello,

Essaie ça

Sub test()

Application.ScreenUpdating = False
Application.Calculation = xlCalculationManual

For ligne = 1 To 100

    For colonne = 1 To 100

        If ligne = colonne Then
            Cells(ligne, colonne) = 1
        Else
            Cells(ligne, colonne) = 0
        End If

    Next colonne

Next ligne

Application.ScreenUpdating = True
Application.Calculation = xlCalculationAutomatic

End Sub

@+

hello j'ai essayer mais ce ne marche pas , je voudrais l'inserer dans mon classeur excel aussi.

Hum, bizarre ça fonctionne chez moi ...

T'as essayé d'exécuter le code sur une feuille vierge ?

T'es en option explicit dans le code ?

@+

capture d ecran le 2023 02 14 a 17 33 57

jai ca qui apparait

hello,

Hum t’es sur Mac ? ☺️

@+

Bonjour à tous,

Baroute78, j'ai testé ton code, il est bien fonctionnel,

Un autre essai...en me basant sur ta proposition...

Sub diagonale()
 Dim tb(100, 100), i%, j%
  Application.ScreenUpdating = False
    For i = 0 To UBound(tb, 1)
     For j = 0 To UBound(tb, 2)
      tb(i, j) = IIf(i = j, 1, 0)
     Next j
    Next i
   With Sheets("Feuil1") ' à adapter
   .Range("A1").Resize(100, 100) = tb
   End With
 Erase tb
End Sub
19classeur1.xlsm (16.74 Ko)

CTRL + e pour exécuter la macro.

Cordialement,

capture d ecran le 2023 02 17 a 18 24 51

bonjour merci beaucoup mais je voudrais exactement cette forme

bonjour le fil,

Sub test()
     Dim i, Tb() As Integer: ReDim Tb(1 To 10, 1 To 10)  'ajuster ce 10 !!!

     For i = 1 To UBound(Tb)
          If i - 1 > 0 Then Tb(i, i - 1) = 1
          If i + 1 <= UBound(Tb, 2) Then Tb(i, i + 1) = 1
     Next
     Range("A1").Resize(UBound(Tb), UBound(Tb, 2)) = Tb
End Sub

merci beaucoup je vais essayer de l'ajuster

Rechercher des sujets similaires à "matrice 100 vba"