Thema Datum  Von Nutzer Rating
Antwort
08.04.2014 12:36:09 Sebo
NotSolved
08.04.2014 16:02:28 gabi
NotSolved
Rot Matrix mit 0 in der Diagonalen, mit gleichen Werten oberhalb bzw unterhalb der Diagonalen.
08.04.2014 16:54:59 Gast69493
NotSolved
08.04.2014 17:13:53 Holger
NotSolved
08.04.2014 17:55:20 Gast9894
NotSolved
08.04.2014 20:33:31 Gast55742
NotSolved

Ansicht des Beitrags:
Von:
Gast69493
Datum:
08.04.2014 16:54:59
Views:
789
Rating: Antwort:
  Ja
Thema:
Matrix mit 0 in der Diagonalen, mit gleichen Werten oberhalb bzw unterhalb der Diagonalen.
Option Explicit

Sub beispiel()
  
  Dim size As Variant
  
  Do
    size = Application.InputBox("Dimension (3-9) eingeben:", "quadr. Matrix", 3, Type:=1)
    If VarType(size) = vbBoolean And size = False Then Exit Sub
    size = Fix(size)
  Loop Until 3 <= size And size <= 9
  
  Dim colNum As VBA.Collection
  Dim i As Long
  
  Set colNum = New VBA.Collection
  
  For i = 1 To (size * size) \ 2
    Call colNum.Add(i)
  Next
  
  Dim matrix() As Long
  Dim m As Long
  Dim n As Long
  
  ReDim matrix(0 To size - 1, 0 To size - 1)
  
  Randomize Timer
  Do
    i = (colNum.Count - 1) * Rnd() + 1
    matrix(m, 1 + n) = colNum(i)
    matrix(1 + n, m) = matrix(m, 1 + n)
    Call colNum.Remove(i)
    
    If n < size - 2 Then
      n = n + 1
    Else
      m = m + 1
      n = m
    End If
    
  Loop While m < size - 1
  
  With Worksheets(1).Range("A1")
    Call .CurrentRegion.Clear
    .Resize(size, size).Value = matrix
  End With
  
  Set colNum = Nothing
  Erase matrix
  
End Sub

 


Ihre Antwort
  • Bitte beschreiben Sie Ihr Problem möglichst ausführlich. (Wichtige Info z.B.: Office Version, Betriebssystem, Wo genau kommen Sie nicht weiter)
  • Bitte helfen Sie ebenfalls wenn Ihnen geholfen werden konnte und markieren Sie Ihre Anfrage als erledigt (Klick auf Häckchen)
  • Bei Crossposting, entsprechende Links auf andere Forenbeiträge beifügen / nachtragen
  • Codeschnipsel am besten über den Code-Button im Text-Editor einfügen
  • Die Angabe der Emailadresse ist freiwillig und wird nur verwendet, um Sie bei Antworten auf Ihren Beitrag zu benachrichtigen
Thema: Name: Email:



  • Bitte beschreiben Sie Ihr Problem möglichst ausführlich. (Wichtige Info z.B.: Office Version, Betriebssystem, Wo genau kommen Sie nicht weiter)
  • Bitte helfen Sie ebenfalls wenn Ihnen geholfen werden konnte und markieren Sie Ihre Anfrage als erledigt (Klick auf Häckchen)
  • Bei Crossposting, entsprechende Links auf andere Forenbeiträge beifügen / nachtragen
  • Codeschnipsel am besten über den Code-Button im Text-Editor einfügen
  • Die Angabe der Emailadresse ist freiwillig und wird nur verwendet, um Sie bei Antworten auf Ihren Beitrag zu benachrichtigen

Thema Datum  Von Nutzer Rating
Antwort
08.04.2014 12:36:09 Sebo
NotSolved
08.04.2014 16:02:28 gabi
NotSolved
Rot Matrix mit 0 in der Diagonalen, mit gleichen Werten oberhalb bzw unterhalb der Diagonalen.
08.04.2014 16:54:59 Gast69493
NotSolved
08.04.2014 17:13:53 Holger
NotSolved
08.04.2014 17:55:20 Gast9894
NotSolved
08.04.2014 20:33:31 Gast55742
NotSolved