24小时热门版块排行榜    

查看: 7897  |  回复: 5

gyh930912

铁虫 (小有名气)

[求助] 形成5*5的方阵,分别输出方阵中个元素,上三角和下三角元素的vb代码

各位高手,小弟急需这个代码,如有知道滴,谢谢分享!!!
回复此楼

» 本帖附件资源列表

  • 欢迎监督和反馈:小木虫仅提供交流平台,不对该内容负责。
    本内容由用户自主发布,如果其内容涉及到知识产权问题,其责任在于用户本人,如对版权有异议,请联系邮箱:xiaomuchong@tal.com
  • 附件 1 : IMG_20130520_094058.jpg
  • 2013-05-25 21:39:55, 811.08 K

» 猜你喜欢

已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

魔血奋斗历史

银虫 (小有名气)

感谢参与,应助指数 +1
ben_ladeng: 应助指数-1, 非有效应助,收回应助指数。谢谢理解 2013-05-26 20:59:29
简单,你等一会,我给你编一个发过来
2楼2013-05-25 22:15:29
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

魔血奋斗历史

银虫 (小有名气)

不好意思,长时间不玩这个,忘了
3楼2013-05-25 22:23:45
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

ausir

木虫 (正式写手)

【答案】应助回帖

感谢参与,应助指数 +1
在 Excel 的VBA 工程中,添加用户模块,按以下方式运行:

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 = "请输入第" & CStr(i) & "行第" & CStr(j) & "列的数值"
       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
运行结果如下:
原始值如下:
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
4楼2013-05-25 23:31:22
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

ausir

木虫 (正式写手)

稍作修改。 1. theMat的定义只要1 to 5, 1 to 5 就够了。 2. 用Debug.print 可以在即时窗口中显示结果。

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 = "请输入第" & CStr(i) & "行第" & CStr(j) & "列的数值"
       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
5楼2013-05-25 23:34:25
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

gyh930912

铁虫 (小有名气)

引用回帖:
5楼: Originally posted by ausir at 2013-05-25 23:34:25
稍作修改。 1. theMat的定义只要1 to 5, 1 to 5 就够了。 2. 用Debug.print 可以在即时窗口中显示结果。

Sub Matrix()
Dim theMat(1 To 5, 1 To 5) As Single

Dim s As String, s1 As String, s2 As String, ...

谢谢!!!
6楼2013-05-27 12:51:30
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
相关版块跳转 我要订阅楼主 gyh930912 的主题更新
最具人气热帖推荐 [查看全部] 作者 回/看 最后发表
[基金申请] 哪位老哥知道今年的国自然具体哪一天放榜? +9 Ldrop2023 2026-08-13 9/450 2026-08-16 13:24 by wukun_007
[基金申请] 欢迎发来filecode的Mz6后的代码验证其规律 +32 医学老男孩 2026-08-13 72/3600 2026-08-16 13:15 by 医学老男孩
[基金申请] 咱们一起用铁证分析2026国家社科基金中标与否 +7 启萌科技 2026-08-12 26/1300 2026-08-16 12:35 by 启萌科技
[基金申请] 我的国基提前知道中了,可是同事的操作让我实在接受不了,怎么会有这样的人 +11 家与远方 2026-08-10 16/800 2026-08-16 10:28 by ray43
[基金申请] 时间戳又变了8-15 +12 archvillain 2026-08-15 23/1150 2026-08-15 20:47 by foyo404
[基金申请] filecode=后面第一个是大写字母 +6 wangze12014 2026-08-14 7/350 2026-08-15 20:12 by gltch
[基金申请] filecode +8 cratir 2026-08-14 12/600 2026-08-15 18:08 by zyfgau
[基金申请] 小木虫上这么多卖论文的,真有人买论文么?感觉没必要啊 +12 Tide man 2026-08-10 13/650 2026-08-15 16:34 by 氺木
[基金申请] 关于Filecode分析方法 +10 majunge000 2026-08-10 13/650 2026-08-15 12:26 by hanpeng972
[基金申请] 是这周出结果还是下周出结果? +4 yuleib84 2026-08-11 4/200 2026-08-14 23:05 by lfy8008
[硕博家园] 请教兼职经验 +3 是阿文鸭 2026-08-09 3/150 2026-08-14 12:07 by HER12025
[硕博家园] 读博的好处 +4 lnee 2026-08-11 4/200 2026-08-14 10:20 by ahsoarli
[基金申请] 静等基金结果 +8 gjjjzhong 2026-08-10 21/1050 2026-08-13 17:56 by 且听虎啸
[基金申请] 重要来源:本周末出结果 +10 瞬息宇宙 2026-08-12 10/500 2026-08-13 15:46 by likettle
[基金申请] 结合人工智能,周易传统文化,filecode打分制来了,3分以上希望很大。 +3 Tide man 2026-08-12 4/200 2026-08-13 08:35 by ZJTJZ
[基金申请] 2019年青年基金涵评意见,大家看看几个A,几个B? +11 Tide man 2026-08-11 11/550 2026-08-13 07:35 by 撸猫猫
[基金申请] 帮忙看看fileCode +7 wwncly 2026-08-10 13/650 2026-08-11 19:36 by 冰心玉壶晴
[基金申请] 为什么网上很多人说本周 12号出结果 +6 瞬息宇宙 2026-08-10 7/350 2026-08-11 19:25 by Tide man
[基金申请] 确定了,国自然21号放榜 +6 布布和一二 2026-08-10 7/350 2026-08-10 19:15 by 2000zf36392
[基金申请] 面上项目filecode邪修 +5 西山十月 2026-08-09 7/350 2026-08-10 07:32 by 仁砚薪传
信息提示
请填处理意见