VBA 创建一个文档输出2元数组应该如何输出? 用print #2,函数

比如说 这个数组是
11, 7, -2, 9, -3
-7, 14, 23, 15, 4
2, -3, 5, 19, 12
-2, 25, -6, 10, 30
我要在一个文档中读取这个二院数组

将一行中最大的那个放到第一列
然后在另一个文档中输出原数组和改变后的数组

应该怎么编写程序?谢谢!

第1个回答  2010-12-02
Sub aaaa()
Open "c:\a.txt" For Input As #1
Open "c:\b.txt" For Output As #2
Do While Not EOF(1)
Line Input #1, s
arr = Split(s, ",")
a = Val(arr(0))'Val是进行强制类型转换,避免数据中有不是数值的字符串。
j = 0
For i = 1 To UBound(arr)
If Val(arr(i)) > a Then a = arr(i): j = i
Next
For i = j To 1 Step -1
arr(i) = arr(i - 1)
Next
arr(0) = a
Print #2, "原数组:" & s & vbTab & "修改后数组:" & Replace(Join(arr, "," & vbTab), " ", "")
Loop
Close #1, #2
End Sub
第2个回答  2010-12-02
Dim a!(5), i%, j%, aMax!, temp!, N%
N = 5
Open "f:\ss.txt" For Input As #1
Open "f:\oo.txt" For Output As #2
For j = 1 To 4
'读入文件
For i = 1 To N
Input #1, a(i)
Next i
'获取最大值
aMax = a(1)
For i = 2 To N
If a(i) > aMax Then aMax = a(i)
Next i
For i = 1 To N
temp = a(i): a(i) = aMax: aMax = temp
If aMax = a(1) Then Exit For
Next i
For i = 1 To N - 1: Print #2, a(i),: Next i: Print #2, a(N)
Next j
Close #1: Close #2本回答被网友采纳

相关了解……

你可能感兴趣的内容

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 非常风气网