| 5 | 1/1 | 返回列表 |
| 查看: 7637 | 回復(fù): 5 | ||
| 當(dāng)前只顯示滿(mǎn)足指定條件的回帖,點(diǎn)擊這里查看本話(huà)題的所有回帖 | ||
gyh930912銀蟲(chóng) (小有名氣)
|
[求助]
形成5*5的方陣,分別輸出方陣中個(gè)元素,上三角和下三角元素的vb代碼
|
|
各位高手,小弟急需這個(gè)代碼,如有知道滴,謝謝分享。! |
銀蟲(chóng) (小有名氣)
銀蟲(chóng) (小有名氣)
木蟲(chóng) (正式寫(xiě)手)
|
在 Excel 的VBA 工程中,添加用戶(hù)模塊,按以下方式運(yùn)行: Sub Matrix() Dim theMat(0 To 5, 1 To 5) As Single Dim s As String, s1 As String, s2 As String, s3 As String, s10 As String, s20 As String, s30 As String Dim i As Integer, j As Integer For i = 1 To 5 For j = 1 To 5 's = "請(qǐng)輸入第" & CStr(i) & "行第" & CStr(j) & "列的數(shù)值" theMat(i, j) = (i - 1) * 5 + j 'Val(InputBox(s, "" )Next j Next i 'MsgBox ("輸入完成,按確定后顯示輸入的陣列。" ![]() s1 = "" s2 = "" s3 = "" For i = 1 To 5 s10 = "" s20 = "" s30 = "" For j = 1 To 5 s10 = s10 & Format(theMat(i, j), "0000" & " "If i <= j Then s20 = s20 & Format(theMat(i, j), "0000" & " " Else s20 = s20 & Format(0, "0000" & " "If i >= j Then s30 = s30 & Format(theMat(i, j), "0000" & " " Else s30 = s30 & Format(0, "0000" & " "Next j s1 = s1 & s10 & vbCr & vbLf s2 = s2 & s20 & vbCr & vbLf s3 = s3 & s30 & vbCr & vbLf Next i MsgBox ("原始值如下:" & vbCrLf & s1 & vbCrLf & "上三角矩陣如下:" & vbCrLf & s2 & vbCrLf & "下三角矩陣為:" & vbCrLf & s3) End Sub 運(yùn)行結(jié)果如下: 原始值如下: 0001 0002 0003 0004 0005 0006 0007 0008 0009 0010 0011 0012 0013 0014 0015 0016 0017 0018 0019 0020 0021 0022 0023 0024 0025 上三角矩陣如下: 0001 0002 0003 0004 0005 0000 0007 0008 0009 0010 0000 0000 0013 0014 0015 0000 0000 0000 0019 0020 0000 0000 0000 0000 0025 下三角矩陣為: 0001 0000 0000 0000 0000 0006 0007 0000 0000 0000 0011 0012 0013 0000 0000 0016 0017 0018 0019 0000 0021 0022 0023 0024 0025 |
木蟲(chóng) (正式寫(xiě)手)
|
稍作修改。 1. theMat的定義只要1 to 5, 1 to 5 就夠了。 2. 用Debug.print 可以在即時(shí)窗口中顯示結(jié)果。 Sub Matrix() Dim theMat(1 To 5, 1 To 5) As Single Dim s As String, s1 As String, s2 As String, s3 As String, s10 As String, s20 As String, s30 As String Dim i As Integer, j As Integer For i = 1 To 5 For j = 1 To 5 's = "請(qǐng)輸入第" & CStr(i) & "行第" & CStr(j) & "列的數(shù)值" theMat(i, j) = (i - 1) * 5 + j 'Val(InputBox(s, "" )Next j Next i 'MsgBox ("輸入完成,按確定后顯示輸入的陣列。" ![]() s1 = "" s2 = "" s3 = "" For i = 1 To 5 s10 = "" s20 = "" s30 = "" For j = 1 To 5 s10 = s10 & Format(theMat(i, j), "0000" & " "If i <= j Then s20 = s20 & Format(theMat(i, j), "0000" & " " Else s20 = s20 & Format(0, "0000" & " "If i >= j Then s30 = s30 & Format(theMat(i, j), "0000" & " " Else s30 = s30 & Format(0, "0000" & " "Next j s1 = s1 & s10 & vbCr & vbLf s2 = s2 & s20 & vbCr & vbLf s3 = s3 & s30 & vbCr & vbLf Next i s = "原始值如下:" & vbCrLf & s1 & vbCrLf & "上三角矩陣如下:" & vbCrLf & s2 & vbCrLf & "下三角矩陣為:" & vbCrLf & s3 MsgBox (s) Debug.Print s End Sub |
| 最具人氣熱帖推薦 [查看全部] | 作者 | 回/看 | 最后發(fā)表 | |
|---|---|---|---|---|
|
[考研] 070300化學(xué)354求調(diào)劑 +6 | 101次希望 2026-03-28 | 6/300 |
|
|---|---|---|---|---|
|
[考研] 317分 一志愿南理工材料工程 本科湖工大 求調(diào)劑 +9 | 芋泥小鈴鐺 2026-03-28 | 9/450 |
|
|
[考研] 348求調(diào)劑 +5 | 小懶蟲(chóng)不懶了 2026-03-28 | 5/250 |
|
|
[考研] 329求調(diào)劑 +7 | 星野? 2026-03-26 | 7/350 |
|
|
[碩博家園] 求調(diào)劑 有機(jī)化學(xué)考研356分 +3 | Nadiums 2026-03-25 | 4/200 |
|
|
[考研]
|
y7czhao 2026-03-26 | 10/500 |
|
|
[考研] 070300化學(xué)求調(diào)劑 +4 | 起個(gè)名咋這么難 2026-03-27 | 4/200 |
|
|
[考博] 26申博 +3 | 加油沖。 2026-03-26 | 3/150 |
|
|
[考研] 292求調(diào)劑 +4 | 求求了收下我吧?/a> 2026-03-26 | 4/200 |
|
|
[考研] 324求調(diào)劑 +8 | hanamiko 2026-03-26 | 10/500 |
|
|
[考研] 321求調(diào)劑 +6 | Ymlll 2026-03-24 | 6/300 |
|
|
[考研] 271求調(diào)劑 +6 | 生如夏花… 2026-03-22 | 6/300 |
|
|
[考研] 263求調(diào)劑 +6 | yqdszhdap- 2026-03-22 | 10/500 |
|
|
[考研] 309求調(diào)劑 +4 | gajsj 2026-03-25 | 5/250 |
|
|
[考研] 293求調(diào)劑 +7 | 加一一九 2026-03-24 | 7/350 |
|
|
[考研] 318求調(diào)劑 +3 | plum李子 2026-03-23 | 3/150 |
|
|
[考研] 一志愿武理085500機(jī)械專(zhuān)業(yè)總分300求調(diào)劑 +3 | an10101 2026-03-24 | 7/350 |
|
|
[考研] 求調(diào)劑 +6 | 研研,接電話(huà) 2026-03-24 | 7/350 |
|
|
[考研]
|
13659058978 2026-03-24 | 4/200 |
|
|
[考研] 接收2026碩士調(diào)劑(學(xué)碩+專(zhuān)碩) +4 | allen-yin 2026-03-23 | 6/300 |
|