Excel表格数据处理

帮同事做的。一个工作簿以为部门为名,里面有很多工作表,每个工作以姓名命名,为了统计方便将整个部门的数据处理成方便统计的列表。

VBA:

Sub 数据导入()
For biao = 1 To Sheets.Count
    If Sheets(biao).Name <> "数据表" Then
        For lie = 2 To 51 Step 2
            For hang = 4 To 15
                Endr = Sheets("数据表").Cells(65536, 3).End(xlUp).Row + 1
                If Sheets(biao).Cells(hang, lie) <> "" Then
                    Sheets("数据表").Cells(Endr, 2) = Sheets(biao).Name  '姓名
                    Sheets("数据表").Cells(Endr, 3) = Sheets(biao).Cells(hang, 1).Value  '月份
                    If Sheets(biao).Cells(1, lie) = "" Then  '项目
                        Sheets("数据表").Cells(Endr, 4) = Sheets(biao).Cells(1, Sheets(biao).Cells(1, lie).End(xlToLeft).Column).Value
                      Else
                        Sheets("数据表").Cells(Endr, 4) = Sheets(biao).Cells(1, lie).Value
                    End If
                    If Sheets(biao).Cells(1, lie) = "套餐" Or Sheets(biao).Cells(1, lie - 1) = "套餐" Then
                        Sheets("数据表").Cells(Endr, 5) = "套餐"
                      ElseIf Sheets(biao).Cells(2, lie) = "" Then
                        Sheets("数据表").Cells(Endr, 5) = Sheets(biao).Cells(2, Sheets(biao).Cells(2, lie).End(xlToLeft).Column).Value
                      Else
                        Sheets("数据表").Cells(Endr, 5) = Sheets(biao).Cells(2, lie).Value
                    End If
                    Sheets("数据表").Cells(Endr, 6) = Sheets(biao).Cells(hang, lie).Value  '次数
                    Sheets("数据表").Cells(Endr, 7) = Sheets(biao).Cells(hang, lie + 1).Value '金额
                End If
            Next hang
        Next lie
    End If
Next biao
End Sub
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 1.1 VBA是什么 直到90年代早期,使应用程序自动化还是充满挑战性的领域.对每个需要自动化的应用程序,人们不得...
    浮浮尘尘阅读 21,875评论 6 49
  • 自从2014年开通[完美Excel]微信公众号以来,坚持分享已经学习到的Excel和VBA知识和心得,目前已分享文...
    完美Excel阅读 8,351评论 6 69
  • VBA订制工具栏 http://club.excelhome.net/thread-1047254-1-1.htm...
    大海一滴写字的地方阅读 2,278评论 0 0
  • 本例为设置密码窗口 (1) If Application.InputBox(“请输入密码:”) = 1234 Th...
    浮浮尘尘阅读 13,778评论 1 20
  • 也许你已经做了上千张表格,也许你用函数算了上千复杂的运算。也许认为excel不过如此,今天25招秘技希望可以帮到大...
    南屋阿米佛头阅读 3,760评论 0 51