excel常见问题大集合(13)

时间:2025-07-08

行1 1 2 3 4 5 /行2 1 2 3 4 5 /行3 1 2 3 4 5 /以下类同 /

2. 改为行排列(每12行5列内容共12组,排为一行)

列1 列2 列3 列4 列5 列6 列7 列8 列9 列10 (60列)

原1-12行 1 2 3 4 5 1 2 3 4 5 (60列) /原13-24行 1 2 3 4 5 1 2 3 4 5 (60列) /原25-36行 1 2 3 4 5 1 2 3 4 5 (60列) /以下类推

本人不会编写宏,让您见笑曾费劲手工移动录制了一个取2400行(每行5列内容)改列的宏。因原有工作表行不断增加,经常需要行改列作其它用途,录制的宏不能满足需要。烦请大家帮助写一自动循环取12行5列内容排列为一行的宏。

规律:

1. 1-12行1-5列内容排在第1行(第一行1-5列、第二行1-5列、类推,完成为60列)

2. 13-24行1-5列内容排在第2行(第13行1-5列、第14行1-5列、类推)

3. 25-36行1-5列内容排在第3行(第25行1-5列、第26行1-5列、类推)

4. 以下类推

解答:Sub 转换()

Dim numcol As Integer

Dim numrow As Long

Dim i As Long

Dim x As Integer

Dim numperrow As Integer

numperrow = InputBox("请输入每行要填的数据行的数目:")

Range("数据").Select

numrow = Selection.Rows.Count '数据区的行数

numcol = Selection.Columns.Count '数据区的列数

x = numperrow * numcol

Range("a1").Select

For i = 1 To numrow '以数据的每一行为单位进行剪切

Range("数据").Rows(i).Cut

ActiveSheet.Paste

Selection.Offset(, numcol).Select

If (i Mod numperrow) Then '判断是否要换行

Else: Selection.Offset(1, -x).Select

End If

Next i

End Sub

'本程序需要把要变换的数据命名为"数据"(数据区的列数可以任意,不一定是5)方法:选中该区域,在名称框内输入"数据"即可,然后按程序要求输入每行要填的数据行的数目(如本例中的12)

如何给自动筛选中的自定义指定快捷键

解答:Sub 自动筛选()

On Error GoTo xx

Selection.AutoFilter = True

xx:

End Sub

汇总问题

excel常见问题大集合(13).doc 将本文的Word文档下载到电脑

精彩图片

热门精选

大家正在看

× 游客快捷下载通道(下载后可以自由复制和排版)

限时特价:7 元/份 原价:20元

支付方式:

开通VIP包月会员 特价:29元/月

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信:fanwen365 QQ:370150219