全部版块 我的主页
论坛 提问 悬赏 求职 新闻 读书 功能一区 经管百科 爱问频道
2079 2
2019-04-07
求大神解答,非常感谢!
二维码

扫码加我 拉你入群

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

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

全部回复
2019-4-7 12:45:30
Step1   新建并打开空白工作簿,然后另存为“列首尾相接.xlsm”(即Excel启用宏的工作簿);
Step2   打开VBA编辑器,粘贴以下代码,运行即可。


Sub 多列首尾相接()
   
    Dim rngRanges As Range                      '需处理的多列数据区域
    Dim intColsCount As Integer                 '选中区域的总列数
    Dim intRowsCount As Integer                 '选中区域的总行数
    Dim i As Integer                            '循环变量
    Dim strSourceFileName As String             '原始数据工作簿名称(含路径)
    Dim strSourceWbName As String               '原始数据工作簿名字(仅名字,不含路径)
    Dim strSheetName As String                  '原始数据工作表名字
    Dim strMsg As String                        '提示信息
   
    strSourceFileName = Application.GetOpenFilename("Excel工作薄 (*.xls*),*.xls*")
    If strSourceFileName = "False" Then
        MsgBox "没有选择文件!请重新运行本程序并选择一个被处理文件!", vbInformation, "取消"
        Exit Sub
    Else
        Workbooks.Open Filename:=strSourceFileName
        strSourceWbName = ActiveWorkbook.Name   '获取原始数据工作簿的名字(仅名字,不含路径)
        Set rngRanges = Application.InputBox(prompt:="请选择要处理的数据区域:", Type:=8)
        strSheetName = ActiveSheet.Name         '获取原始数据工作表的名字
        intColsCount = rngRanges.Columns.Count
        intRowsCount = rngRanges.Rows.Count
        strMsg = rngRanges.Address
        
        For i = 1 To intColsCount
            Workbooks(strSourceWbName).Worksheets(strSheetName).Activate
            rngRanges.Columns(i).Copy
            Workbooks("列首尾相接.xlsm").Worksheets("sheet1").Activate
            Worksheets("sheet1").Cells(1, 2).Select
            Worksheets("sheet1").Cells(1 + intRowsCount * (i - 1), 1).Value = "原第 " & i & " 列"
            ActiveCell.Offset(intRowsCount * (i - 1), 0).PasteSpecial
        Next i
        Worksheets("sheet1").Range("f1").Value = "原始数据区域范围是 " & strMsg
    End If
   
End Sub
二维码

扫码加我 拉你入群

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

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

2019-4-8 16:38:35
lxl2603 发表于 2019-4-7 12:45
Step1   新建并打开空白工作簿,然后另存为“列首尾相接.xlsm”(即Excel启用宏的工作簿);
Step2   打开 ...
太详细了啊 ,我试试看看啊
二维码

扫码加我 拉你入群

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

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

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

说点什么

分享

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