首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往
您找到你想要的搜索结果了吗?
是的
没有找到

VBA还是学Python,这不是个问题!

点击“博视点Broadview”,获取更多书讯 面向Excel数据处理自动化脚本编程,目前主要有VBA和Python两种语言可供选择。...就Excel对象模型提供功能而言,新语法封装部分只是冰山水面上一小部分,水面下部分需要通过API方式实现。 下面举例说明两种使用方式区别。...所以使用API方式可以使用大多数VBA编程代码,懂VBA编程同学可以很快就能上手。当然,使用xlwings方式会有一些编码、效率方面的好处,有一些扩展功能。...PART 04 用VBA和Python操作Excel工作表 由于xlwings封装了VBA使用Excel对象模型,所以,Python使用xlwings可以操作Excel表格,可以从表格读取数据、将数据写入表格...下面分别用VBA和Python,使用缓存方式创建数据透视表。Excel会为数据透视表建立一个缓存,通过该缓存,可以实现对数据源中数据快速读取

2.7K50

攻击技术研判-攻击者结合NDay投递VBA恶意远控分析

情报背景 Malwarebytes研究人员发现有攻击者在近期攻击活动中使用CVE-2021-26411部署了功能齐全VBA RAT,本文对其中包含攻击技术进行了分析研判。...1 CVE-2021-26411 远程代码执行漏洞在野利用 CVE-2021-26411是影响大部分Edge和Internet Explorer版本远程代码执行漏洞。...使用了该漏洞Document.xml.rels 模板文件 2 使用 AutoHotKey脚本语言实现部署VBA RAT 漏洞利用成功会使用 AutoHotKey脚本部署VBA RAT。 1....其功能包括: 完整磁盘文件读取 文件下载 文件上传 文件删除 退出 加载shellcode 改变任务请求频率 整个功能和控制方式简单清晰,访问服务器获取Json格式命令,值得注意是,RAT开发者将同时执行任务总数限制为...由 M01N Team

1.6K30

WPS JS宏——String对象

VBAString都是代表字符串,使用上没什么大不同,和Number一样,因为在js中是一种对象,所以有对应属性和方法: function testString() { var s =...ng tr ng s中文tring slice、substr、substring和VBAmid、left、right函数差不多,都是用来截取字符串,至于有3个功能差不多方法,应该也主要是为了方便...String对象还有许多其他方法,具体有哪些和使用方法找相关资料去学习下就可以,没必要特别去举例了。...这里特别再说一种方便使用方法: function testString() { var s = new String("s中文tring") for (let i = 0; i <...3 type:string t 4 type:string r 5 type:string i 6 type:string n 7 type:string g 就是可以像使用数组一样,使用下标的方法来读取字符

2.5K20

VBA专题12:详解GetAttr函数

表中第一列是VBA名称,相对于第二列中值更易理解。在VBA程序中,可以将 vbXX名称与数字值互换使用。 输出 GetAttr函数输出究竟是什么呢?...要查看特定属性是否存在,需要使用AND运算符并将结果值设置为整数: iReadOnly = GetAttr(myFile) And vbReadOnly 如果输出为零,则vbReadOnly不是此文件属性...下面是使用VBAIf-Then语句测试只读属性完整示例: Sub VBA_GetAttr_Demo() Dim myFile As String Dim iReadOnly As Integer...要使用GetAttr函数,不需要更多信息,但如果想了解如何分解返回总和数值,看下面的讲解。 按位与分解 那么我们如何测试一个数字是否真的是和部分呢?可以通过使用按位与来实现。...同时,VBAGetAttr函数是一个函数,而不是文件属性,因此不能使用它来更改文件属性,只能使用它来确定存在哪些文件属性。 可以使用按位AND运算符确定是否存在特定属性。

1.8K20

VBA与数据库——写个操作数据库加载宏

工作中用多了VBA后,对数据处理自然会有很多心得。 个人目前状态,基本上会把自己一些经常用到数据进行结构化处理,用数据库来保存。...不知道大家最终是否都是这样,个人现在使用VBA更多都是在操作数据库。 刚开始接触数据库时候,惊叹于他高效和简洁,但是使用也仅仅是调用ADO进行一些简单操作,对于数据库原理是不懂。...随着使用加深,也会上网查找一些数据库方面的知识,发现数据库太高深了!还好个人也不是要做什么专门程序开发,仅仅是使用VBA来处理数据而已,学些皮毛也够用。...从开始写一些针对特定数据库操作,到后面自己创建一些简单数据库,发现使用VBA来操作数据库,用还就是简单查找、添加、删除、更新数据,所以就想到了写个简单加载宏,用来对工作中用到数据库进行一些常规操作...读取表名、读取字段名:这个功能很好理解。最开始也是想打开一个数据库自动去读取,但是发现有些数据库表比较多,读取很费时间,没有必要自动去读取,等到确实需要时候再手动去读取

73510

「数据ETL」从数据民工到数据白领蜕变之旅(七)-将Excel(PowerQuery+VBA)能力嫁接到SSIS中

在数据ETL过程中,除了常规规范工整关系数据库之外,很大一部分数据来源于用户自行生产Excel数据源,此部分数据最容易产生脏乱差数据现象。...前面推虽有介绍使用dotNET和python这样脚本语言去处理,但仍然有一片广阔领域待开发,使用Excel自身能力,即VBA和轻量化ETL工具PowerQuery结合。...每个人使用工具熟悉度不同,有人喜欢python方式清洗,但使用PowerQuery来清洗,也是非常方便,大部分都是界面式操作即可完成。...区别于一般PowerQuery方式仅提供读取数据功能,本篇使用SSIS还会对数据进行抽取完归档操作,归档过程中,通过重命名文件名方式,方便查阅数据归档操作时间。...性能及费用问题 不可否认,使用PowerQuery来清洗数据很慢,同样加上使用COM接口方式来读取Excel文件也很慢。

4.5K20

批量合并Excel数据时“外部表不是预期格式”或“文件包含损坏数据”两种情况

将数据从PQ加载到Excel时可能也会出现类似下面的提示: 针对这两种错误,主要是由以下两种情况导致: 1、要合并汇总数据是从某些专业平台或系统导出xls(2003...- 情况1:xls文件 - 首先要说明是,并不是Power Query不支持xls格式Excel文件读取,只是某些专业平台或系统导出xls文件读取会出错而已。...当然,这种情况下,往往需要导入文件都是一大批,一个个打开另存可能比较麻烦,为了方便,可以收藏一段VBA代码用于自动化处理: Sub save_xls_to_xlsx() '作者:大海...False wb.Close savechanges:=False Kill f & "\" & xls_file '若不想删除原文件,可注释掉本行...: 这些文件通常都是不需要,所以,PQ从文件夹读入文件后,即可直接通过筛选(文件名开头不是“~$"工作簿)方式去掉:

11.5K62

autocad二次开发资料总结

中文名 AutoCAD 二次开发 外文名 AutoCAD Development System 目 提高效率建立适合本行平台 ADS 已经淘汰一种开发AutoCAD环境 AutoLISP...它可采用多种编程方式例如:VBA构造一种或多种与应用程序独立宏编程。提供Automation服务软件组件通过标准接口能够对外开放它特定功能。...这种编程方式难度适中,能够访问大部分编程接口(除了自定义实体);但是,由于AutoCAD.NET接口是在不断完善过程中导致了在低版本上不能够使用新增功能。...相反,解释型API如AutoLISP仅被限用于使用静态AutoCAD命令集提供结构化函数库 4. 技术难度:AutoLISP和VBA均是解释型语言,方便易学,开发周期短。.../javascript/ Kean是Autocad公司二次开发专家,第一个官方附件中好些例子其实就是出自Kean之手 其中几篇博 缩放显示物体到最大化 http://through-the-interface.typ

2.8K32

Excel VBA解读(163):错误处理技术之概述

如果认为某种情形下可能发生错误,那么最好编写特定代码以处理这些可能错误。而对于所有其他错误,使用通用代码进行处理。...这就是VBA错误处理语句起作用地方,它们使我们应用程序能够优雅地处理所有意外错误。...VBA错误类型 在VBA中,有3类错误: 1.语法错误 2.编译错误 3.运行时错误 使用错误处理来处理运行时错误。...它们通常不在控制范围内,但也可能是由于代码中错误引起。例如,假设代码要从外部工作簿中读取数据,但该工作簿文件不存在,当代码尝试打开该工作簿读取数据时会发生错误。...我们通常将这些错误称为可预见错误。如果没有特定代码来处理错误,则将其视为意外错误。我们使用VBA错误处理语句来处理意外错误。

3.7K10

【C-文件操作】一教你如何将代码数据持久化

,文件写入-----fputc ​编辑 4-2字符输入函数:文件读出----fgetc  4-3本行输出函数,文本写入---fputs 4-4本行输入函数:文件读出---fgets  4-5... 5.文件随机读写 6.文本文件和二进制文件  7.文件读取结束判定  8.文件缓冲区 ---- 1.为什么使用文件?...2-1分类 程序文件:test.c,test.obj,test.exe等,可操作性数据文件 数据文件:二进制文件和文本文件等,存放一般数据 2-2件名 文件名3部分:文件路径+文件名主干...= EOF) { printf("%c", ch); }  4-3本行输出函数,文本写入---fputs //文件写入 fputs("hello world",pf); //备注:...这里mode为"w",每次打开文件时会将原来文件内容进行销毁 //但是这里销毁是针对fopen打开而言,而不是fputc fputs("XXXXXXXXXXX",pf); 4-4本行输入函数

69830

Excel编程周末速成班第26课:处理运行时错误

将这些数据类型用于对象引用(而不是使用特定对象类型)使VBA无法提前知道对象方法和属性是什么,从而为各种错误埋下了隐患。...只要数组索引可能超出范围,在尝试给数组赋值或从数组中读取数据之前,使用LBound和UBound检查索引值。 总是验证用户输入数据。错误常见原因是用户输入不正确数据,例如在需要数字时输入字符串。...捕获错误 VBA错误是通过捕获它们来处理。捕获错误时,告诉VBA:“发生错误时,不要显示默认对话框并暂停程序,而应将执行过程转到称为错误处理程序特殊代码部分。”...在详细介绍编写错误处理代码之前,你需要了解Err对象,这将在下一部分中介绍。 提示:由于VBA过程内容彼此独立,因此可以在多个过程中为错误处理代码使用相同标签。...提示:错误处理对于所有VBA过程(包括函数和类方法)都以相同方式工作。 Err对象 Err对象是VBA不可或缺部分,总是可用于你程序。任何时候,Err对象都包含有关最近发生错误信息。

6.7K30

VBA解析VBAProject 05——提取模块代码

前面介绍是自己使用VBA代码来解压缩,其实也有现成API RtlDecompressBuffer可以使用,具体用法可以网上找找。 所以,只要能找到模块数据流,然后进行解压缩就可以还原模块代码。...模块数据流也就是在复合文档中读取一个数据流,另外要注意是,这样读取出来模块数据流并不都是我们写VBA代码,还需要结合解析dir流时候得到模块信息进行截取,再进行解压缩: '读取某个模块代码...ByRef StrCode As String) As String Dim ret As String Dim b() As Byte '读取原始流 ret...Exit Function End If 'vba代码只是后面的一部分 Dim bCode() As Byte Dim moduleIndex..." & ModuleName & "]" Exit Function End If Dim i As Long, j As Long '跳过前面不需要部分

1.9K21

VBA专题10-2:使用VBA操控Excel界面之设置工作表

本文主要讲解操控工作表中一些界面元素VBA代码。 名称框 名称框中名字是为单元格区域定义名字,可以由用户定义名称,或者由Excel自动创建,例如Print_Area和表1。...如果要指定滚动窗格,可以使用类似下面的语句,例如,在第2个窗格中滚动到距离最左侧列10列: ActiveWindow.Panes(2).ScrollColumn= 10 如果拆分窗格被冻结,那么ScrollRow...'隐藏工作簿中第3个工作表 Sheets(3).Visible =xlSheetHidden '隐藏代码名称为Sheet3工作表 Sheet3.Visible =xlSheetHidden 使用代码名称引用工作表优点在于...:即便用户移动和重命名工作表,或者添加工作表,VBA代码将仍然引用是正确工作表。...VBA帮助系统中查找。

4.6K40

Excel 保留行号去重

问题 对 Excel 中一列已经排序数据,如何去重,且保留最终留下行号?...163 888 999 分析 遇到这个问题第一个念头是用脚本来做,虽然 VBA 编辑很方便,也肯定能解决,但是总觉得还是不如 Excel 本身提供操作方便。...第二个念头是使用公式,数据已经排序,需要保留第一次出现该值那一行,那么可以比对本行值与上一行值,如果相等则说明不是第一次出现,应删除,如果不等则说明是第一次出现,应保留。...沿这个思路很简单地用一个 IF 就解决了问题: =IF(A2A1,A2,"") 总结 自从几年前学了点 VBA,遇到一些利用 Excel 进行数据处理问题首先就想到使用脚本去做。...查并不熟悉 API 然后写出逻辑。 执行之后拿到结果。 保存时候可能还得复制到另一份纯净 Excel 文档里去,免得带脚本 xls 文件在别人机子上打开会报安全隐患之类

44110

告诉你什么是Excel VBA对象模型及如何引用对象

Range,代表单元格、行、列、所选择单元格,或三维单元格区域。 如果以图形描述,上述Excel VBA对象层次结构大致如下所示: 注:上图仅仅是Excel VBA对象模型层次结构很小一部分。...例如,假设想对一组特定对象执行某些操作,如果所有这些对象都是同一集合部分,则可以构造VBA代码以遍历集合每个成员并执行所需操作。可以想得到,这种结构比单独列出每个集合成员更简单。...Sheets,特定工作簿中所有工作表集合,此时与工作表类型无关,包含常规工作表和图表工作表。 引用对象 在编写VBA代码时,了解如何引用对象是至关重要。...很明显,想要开始处理特定VBA对象时,必须先识别它,也就是说,告诉VBA要处理哪个对象。 如果遍历Excel VBA对象模型整个层次结构来引用对象,则称为完全限定引用。...如何知道要处理具体单元格区域。 这就需要处理如何引用集合内特定对象。可以使用两种方法。 方法1:使用对象名称,其语法为:集合名(“对象名”)。

4.3K30

个人永久性免费-Excel催化剂功能第47波-VBA开发者喜爱加密函数类

题外话 本人也是从ExcelVBA语言入门了编程世界,然后很偶然机会接触到VSTO,并且在一位热心网友一路帮助下,算是入门了C#语言,现在可以灵活地用C#实现自己想要一些小功能(大部分是抄百度和...就算微软自己.Net Framework类库集,也只能在.Net语言中使用,而不能供VBA使用。...一般像我这种水平的人,只需要不断地百度或google,就可以拿到现成东西直接复用,VBA毕竟是业务开发者使用编程语言,同时又是一个官方停止更新语言,仍然使用VBA做一些复杂需求,有点吃力不讨好。...总结 在我过往发表众多自定义函数里,大部分直接照搬了.Net Framework类库里函数,让其能够在Excel环境以自定义函数形式来使用,当中也收到许多反馈说能用自定义函数的人都自己写VBA代码...第9波-数据透视表自动设置 第10波-快速排列工作表图形对象 第11波-快速批量插入图片 第12波-快速生成、读取、导出条形码二维码 第13波-一键生成自由报表 第14波-一键生成零售购物篮分析 第15

3.1K10

支持90多种语言强大OCR

软件介绍 Surya 是一个文档OCR工具包,提供强大OCR(光学字符识别)和线条检测功能,支持90多种语言。 近期热: 5.5K Star 强强强!!!...开源一个好看工作流设计器 OCR: 支持90多种语言OCR,优于云服务基准测试; 文本行检测: 可以在任何语言中进行行级文本检测; 排版分析: 包括表格、图像、页眉等检测; 阅读顺序检测: 有助于文档内容阅读顺序...: 使用相应模型进行文本行检测; from PIL import Image from surya.detection import batch_text_detection from surya.model.detection.segformer...: 使用提供模型和处理器进行文档排版分析; from PIL import Image from surya.detection import batch_text_detection from surya.layout...,其中包括文字识别、文本行检测、排版分析和内容阅读顺序检测。

10610
领券