当前位置:首页 > 技术分析 > 正文内容

提升工作效率,从Excel中提取数据到数组的神奇技巧

ruisui881个月前 (05-18)技术分析13

在日常的办公场景中,如何高效处理大量的Excel数据是许多人的痛点。今天为大家分享一段实用的VBA代码,教你如何提取Excel数据中的特定内容,并运用数组优化操作速度。无论是报表处理还是数据分析,这一技巧都能为你增添工作效率。

Excel中有A列有数据,其中部分内容是带有中括号 [] 的结构,我们只需要提取中括号后的信息并写到相邻的一列。这乍看很复杂,但借助VBA,我们可以轻松解决这一问题,同时让代码运行更快!


实现效果如下:


代码如下:

Sub 提取中括号后内容_数组版()
    Dim ws As Worksheet
    Dim lastRow As Long
    Dim i As Long
    Dim sourceData As Variant
    Dim resultArray() As Variant
    Dim startTime As Single, endTime As Single ' 定义计时变量

    ' 记录开始时间
    startTime = Timer

    ' 获取工作表和最后一行
    Set ws = ThisWorkbook.Sheets(1) ' 根据需要修改为你的工作表
    lastRow = ws.Cells(ws.Rows.Count, "A").End(xlUp).Row ' 获取A列最后一行

    ' 将A列数据加载到数组中
    sourceData = ws.Range("A2:A" & lastRow).Value ' 从A2读取到最后一行数据

    ' 定义结果数组,与源数据大小一致
    ReDim resultArray(1 To UBound(sourceData, 1), 1 To 1)

    ' 遍历数组提取中括号后的内容
    For i = 1 To UBound(sourceData, 1)
        If InStr(sourceData(i, 1), "]") > 0 Then
            ' 获取"]" 后的内容
            resultArray(i, 1) = Trim(Mid(sourceData(i, 1), InStr(sourceData(i, 1), "]") + 1))
        Else
            ' 如果没有中括号则设置为空
            resultArray(i, 1) = ""
        End If
    Next i

    ' 将结果数组写入B列,从B2开始
    ws.Range("B2:B" & lastRow).Value = resultArray

    ' 记录结束时间
    endTime = Timer

    ' 显示运行时间
    MsgBox "提取完成!运行时间为: " & Format(endTime - startTime, "0.00") & " 秒", vbInformation
End Sub

通过运用数组来处理Excel数据,不仅可以极大地提升执行效率,还能简化代码逻辑,减少冗余操作,让数据处理更加快速精准。尤其是在面对海量数据时,数组操作展现出的性能优势不容忽视。无论你是报表分析师、数据处理人员,还是热爱提升办公效率的职场达人,这一技巧都能帮助你在繁杂的工作中游刃有余。

提升工作效率其实没有捷径,但通过掌握一些实用的方法与工具,你会发现办公不仅变得高效,还能带来更多乐趣。希望这篇文章能为你打开Excel编程的新思路。如果你觉得实用,不妨动手试试,或者分享给身边的小伙伴,让更多人受益!

扫描二维码推送至手机访问。

版权声明:本文由ruisui88发布,如需转载请注明出处。

本文链接:http://www.ruisui88.com/post/4127.html

标签: 截取数组
分享给朋友:

“提升工作效率,从Excel中提取数据到数组的神奇技巧” 的相关文章

Windows 下 Git 拉 Gitlab 代码

读者提问:『阿常你好,Windows 下 Git 拉 Gitlab 代码的操作步骤可以分享一下吗?』阿常回答:好的,总共分为五个步骤。一、Windows 下安装 Git官网下载链接:https://git-scm.com/download/winStandalone Installer(安装版)注意...

程序员开发必会之git常用命令,git配置、拉取、提交、分支管理

整理日常开发过程中经常使用的git命令![送心]git配置SSH刚进入项目开发中,我们首先需要配置git的config、配置SSH方式拉取代码,以后就免输入账号密码了!# 按顺序执行 git config --global user.name "自己的账号" git config -...

前后端分离自动化运维平台开发

运维平台采用前后端分离:前端vue,框架vue-element-admin;后端python,框架django-rest-framework.目前运维平台模块如下:1、 CMDB管理应用管理、环境管理、开发语言管理、产品项目管理、资产管理2、 构建发布持续构建、持续部署、Jar工程依赖构建3、 容器...

10款超牛Vim插件,爱不释手了

我是一个忠实的Vim编辑器用户,从事开发工作多年,我一直都非常喜欢使用Vim。轻量、便捷,而且,熟悉了Vim相关的快捷键之后,效率能够成倍的提升。除了这些之外,Vim像很多知名的IDE、编辑器一样,也支持插件配置,通过这些插件,可以实现更多高级、高效的操作。今天,就来给大家分享10个我特别喜欢的Vi...

HTML5学习笔记三:HTML5语法规则

1.标签要小写2.属性值可加可不加””或”3.可以省略某些标签 html body head tbody4.可以省略某些结束标签 tr td li例:显示效果:5.单标签不用加结束标签img input6.废除的标签font center big7.新添加的标签将在下一HTML5学习笔记中重点阐述。...

JavaScript数组操作:掌握常用方法,提升开发效率

JavaScript数组操作:从增删改查到高级应用本文深入解析JavaScript中常用的数组方法,包括push、unshift、pop、shift、map、filter、reverse、at 和 slice。通过详细的例子和应用场景,帮助开发者快速掌握这些方法,提升代码效率和可读性。开篇点题作为J...