当前位置:   article > 正文

Excel使用VBA小程序的方法_wkb.sheets

wkb.sheets

我经常推荐大家使用微软Office而非WPS的主要原因,就是因为微软Office支持写VBA进行二次功能开发,可以写小程序对常见重复性工作进行自动化,大大提高工作效率,提升幸福度。

这里介绍下如果别人给了一段代码,要如何进行使用。例如下述程序,可以新建、复制一份当前“工作薄”,并将所有公式转为数值,方便发布给别人查阅。

Sub 去除公式转为数值工作薄()
' 1、初始化
    tt = Timer ' 计时器
    With Application
        .ScreenUpdating = False     '关闭屏幕更新加快执行速度
        .DisplayAlerts = False
    End With

' 2、一个个sheet进行复制
    Set wkb0 = ActiveWorkbook
    Set wkb = Workbooks.Add '新建一个xlsx文件
    wkb.Sheets("Sheet1").name = "__保证不重名__"
    
    For Each st In wkb0.Sheets
        On Error Resume Next '偶尔一些表格会出错,暂时还找不到原因
        st.Copy After:=wkb.Sheets(wkb.Sheets.Count)
        Set newSt = wkb.Sheets(st.name)
        ' 每个单元格依次查看修改,否则批量修改遇到开了筛选的表格会出错
        Set rng = ActiveSheet.UsedRange
        For Each c In rng.Cells
            If c.HasFormula Then
                c.Value = c.Value
            End If
        Next
    Next st
    
    wkb.Sheets("__保证不重名__").Delete
    
' 3、结束
    With Application
        .ScreenUpdating = True
        .DisplayAlerts = True
    End With
    Debug.Print "ok,用时 " & Timer - tt & "!"
End Sub
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26
  • 27
  • 28
  • 29
  • 30
  • 31
  • 32
  • 33
  • 34
  • 35

操作方法:
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-dVfHSvqK-1575946856346)(http://i2.tiimg.com/582188/8fc9eb87254a2df1.png)]

效果图,这里会生成一个新的,不带公式的工作薄:
在这里插入图片描述

本文内容由网友自发贡献,转载请注明出处:https://www.wpsshop.cn/w/在线问答5/article/detail/860773
推荐阅读
相关标签
  

闽ICP备14008679号