全部版块 我的主页
论坛 数据科学与人工智能 数据分析与数据科学 Excel
1072 3
2011-05-26
怎么把一个矩阵中的数据,变换成一列或一行数据。数据量比较大,有没有简单的技巧?
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

全部回复
2011-5-26 18:10:51
最好百度,,,,
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

2011-5-26 18:23:22
Excel中插入自定义函数的方法
1)通过菜单命令“工具->宏->Visual Basic编辑器”或快捷键“Alt+F11”,调出Visual Basic编辑窗口。
2)在Visual Basic编辑窗口中,通过菜单命令“插入->模块“,插入一个新的模块。
3)在”代码窗口“中输入代码。
4)保存,关闭窗口。



矩阵向量互转函数

Function Change(Rng As Range)
Dim A(), Rg As Range
Dim I As Integer
ReDim A(1 To Rng.Areas(1).Cells.Count)
For Each Rg In Rng.Areas(1).Cells
I = I + 1
A(I) = Rg.Value
Next
Change = Application.WorksheetFunction.Transpose(A)
End Function

'*************************************************
Function Change2(Rng As Range, R As Integer, C As Integer)
Dim A()
Dim I As Integer, J As Integer, K As Integer
ReDim A(1 To R, 1 To C)
For I = 1 To R
For J = 1 To C
K = K + 1
A(I, J) = Rng.Columns(1).Cells(K)
Next
Next
Change2 = A
End Function



应用实例
将上述两个函数放入插入Excel中,并在在A1:C2中的输入如下数据:
1 2
3 4



1)将A1:C2转换成向量
选中E1:E4,输入公式: =change(A1:C2),按下 ctrl+shift+enter快捷键执行命令,得到结果:
1
2
3
4



2)将E1:E4转换为矩阵
选中F1:G2,输入公式: =change2(E1:E4,2,2) 按下 ctrl+shift+enter快捷键执行命令,得到结果:
1 2
3 4
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

2011-5-31 12:58:03
thanks for your sharing
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

相关推荐
栏目导航
热门文章
推荐文章

说点什么

分享

扫码加好友,拉您进群
各岗位、行业、专业交流群