EXCEL这个问题怎么解决

来源:百度知道 编辑:UC知道 时间:2024/05/16 01:27:25
表四中的第一二三列是表一中的第一二三列,表四中的第四五六列是表二中的第一二三列,表四中的第七八九列是表三中的第一二三列,表四中的第10.11.12列是表一中的第4.5.6列,表四中的第13.14.15列是表二中的第4.5.6列,表四中的第16.17.18列是表三中的第4.5.6列,依此类推,请问用什么公式解决,谢谢

A1=INDIRECT(CHOOSE(MOD(INT((COLUMN()-1)/3),3)+1,"sheet1!","sheet2!","sheet3!")&ADDRESS(ROW(),(INT((COLUMN()-1)/9)*3+MOD(MOD(COLUMN()+8,9),3)+1))),拖

其中的"sheet1!"等换成你的表名(若为“表1”则换成"表1!")

思路,这个题就是产生两个序列,1 1 1 2 2 2 3 3 3 1 1 1 2 2 2 3 3 3……和1 2 3 1 2 3 1 2 3 4 5 6 4 5 6 4 5 6 7 8 9……,第一个序列用MOD(INT((COLUMN()-1)/3),3)+1,第二个序列用INT((COLUMN()-1)/9)*3+MOD(MOD(COLUMN()+8,9),3)+1

这个序列产生方式是不是最方便,最简短的就不得而知了

用宏来完成比较简单,三步走:
1.ALT+F11,在新打开的窗口中点插入/模块。
2.复制以下代码:

Sub yueliang()
Dim i, j, m, k As Integer
j = 1
For i = 1 To Sheets(1).Range("IV1").End(xlToLeft).Column Step 3
For m = 1 To 3
For k = 1 To 3
Sheets(m).Columns(i + k - 1).Copy Sheets(4).Cells(1, j)
j = j + 1
Next k
Next m
Next i
End Sub

3.F5即可在工作表4中生成结果。

复制表一的一二三列,到表四的A1右击-选择性粘贴-粘贴链接;
复制表二的一二三列,到表四的D1右击-选择性粘贴-粘贴链接;
复制表三的一二三列,到表四的G1右击-选择性粘贴-粘贴链