首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

Excel实战技巧64: 工作簿中获取数据(不使用VBA

这是在研读《Escape From Excel Hell》时学到的技术,本工作簿中或者其他工作簿中获取所需要的数据,以便于作进一步的分析或者绘制Excel图表。 下图1所示是用于获取数据的工作表。...用于输入的有4个单元格(背景色为橙色),其中单元格A6中输入源数据(即要从哪里获取数据)所在的工作簿名称;单元格A7中为源数据所在的工作表名称;单元格A8中为源数据起始单元格的名称;单元格C5中为数据所在列号...单元格C6开始的列C中的公式为: =OFFSET(INDIRECT(SourceDataLocation,A1Status),ROW()-ROW(C$5)-1,C$5-1) 获取相应的数据。...如果在图1所示的工作表单元格A6中没有输入任何工作簿名(即留空),那么将获取当前工作簿中源数据工作表(如图2)的数据,如下图3所示。 ?...可以在完美Excel微信公众号底部发送消息: 获取数据 下载示例工作簿研究。

3K10

Excel VBA解读(140): 调用单元格中获取先前计算的值

学习Excel技术,关注微信公众号: excelperfect 如果有一个依赖于一些计算慢的资源的用户定义函数,可能希望该用户定义函数在大多数情况下只返回其占用的单元格中最后一次计算得到的值,并且只偶尔使用计算慢的资源...可以设置开关(这里使用称为“RefreshSlow”的已定义名称)并在VBA过程中刷新用户定义函数,如下所示: Sub RefreshUDFs() Dim lCalcMode As Long...Calculate Names("RefreshSlow").RefersTo = False Application.Calculation = lCalcMode End Sub 下面将使用虚拟函数来模拟获取计算慢的资源...(命令等效函数默认为易失性,但在使用它将前一个值传递给VBA用户定义函数时,通常希望它是非易失性的)。此函数也适用于多单元格数组公式。...小结 有几种方法可以VBA用户定义函数的最后一次计算中获取先前的值,但最好的解决方案需要使用C++ XLL。

6.7K20
您找到你想要的搜索结果了吗?
是的
没有找到

Excel VBA解读(144): 使用Application事件和缓存将更快地获取使用单元格区域

学习Excel技术,关注微信公众号: excelperfect 在上一篇文章中,建议加速检索已使用单元格区域最后一行方法之一是使用缓存和Application对象的AfterCalculate事件。...2007及以后的版本,存储并获取使用的单元格行数 Dim strBookSheet As String Dim j As Long Dim nFilled As Long Dim...否则,查找已使用单元格区域中的行数,将其存储在UsedRange高速缓存的下一行中,并将其作为函数的结果返回。 该函数仅可在Excel 2007及更高版本中操作缓存。...有两个原因: 1.Excel 2003及更早版本最多有65536行,因此无论如何找到已使用单元格区域相对较快。...使用Application对象的AfterCalculate事件 首先,我添加了一个名为AppEvents的模块,代码如下: Private WithEvents App As Application

2.3K30

Spider与OpenPyXL的结合1.OpenPyXL基础操作操作数据保存到文件2.爬虫与OpenPyXL的结合(爬取前程无忧网站招聘数据,存储Excel表格中)使用同样的分析方法爬取智联招聘岗位信

只有当单元格被获取是才被创建。这种方式我们不会创建我们从不会使用的单元格,从而减少了内存消耗。 警告:由于上述特性,你如果遍历了单元格而非想要使用它们也将会在内存当中创建。...使用多个单元格 使用切片获取多个单元格 >>> cell_range = ws['A1':'C2'] 使用openpyxl.worksheet.Worksheet.iter_rows() 方法获得多个单元格...我们找到的块中筛选我们想要的数据 ?...引入Workbook这个 from openpyxl import Workbook #调用 Excel = Workbook() fileName = '51job.xlsx' #调用得到正在运行的工作表...print('得到网页html数据') #设置html解析器 soup = BeautifulSoup(data,'html.parser')

96410

python爬取基金股票最新数据,并用excel绘制树状图

= r.text # 替换非字符为空,便于下面的正则 html = re.sub('\s','',html) # 正则获取 板块及id所在区域 labelHtml = re.findall(r'证监会行业\(新\)',html)[0] # 正则板块和id,结果为由元组组成的列表 label = re.findall(r'"qid="(hy.*?)"qquery=.*?"...下面我们试着探究一下,如果成功的话,那么金融界的大盘云图似乎也可以用excel树状图来进行绘制了不是!...由于条件格式下单元格颜色是不固定的无法通过vba获取,我们需要将颜色赋值到新的一列中去,需要用到如下操作: 选中增长率数据复制,然后点击剪切板最右下角会出现剪贴板,再鼠标左键选择需要粘贴的地方如E2,点击剪贴板中需要粘贴的数据即可...单元格色复制操作流程 VBA思路: 激活需要操作的图表(Activate) 遍历全部的系列和数据点(ActiveChart.FullSeriesCollection(1).Points.Count) 第一个数据点开始

2.2K00

python爬取股票最新数据并用excel绘制树状图

= r.text # 替换非字符为空,便于下面的正则 html = re.sub('\s','',html) # 正则获取 板块及id所在区域 labelHtml = re.findall(r'证监会行业\(新\)',html)[0] # 正则板块和id,结果为由元组组成的列表 label = re.findall(r'"qid="(hy.*?)"qquery=.*?"...各省GDP及增长率 由于条件格式下单元格颜色是不固定的无法通过vba获取,我们需要将颜色赋值到新的一列中去,需要用到如下操作: 选中增长率数据复制,然后点击剪切板最右下角会出现剪贴板,再鼠标左键选择需要粘贴的地方如...单元格色复制操作流程 VBA思路: 激活需要操作的图表(Activate) 遍历全部的系列和数据点(ActiveChart.FullSeriesCollection(1).Points.Count) 第一个数据点开始...温馨提示:接近小5000个股票数据,vba填充色块颜色会卡死,不建议全选操作。 公众号后台回复0228,可获取演示文件。 - END -

2.2K30

VB 学习笔记

这一个月由于工作的需要,学习了一点 VB.net 操作 Excel,记录一下笔记 vb 里面的下标 vb 里面的下标有三种: 0 开始:当我们在 vb 中定义一个数组时,下标只能从 0 开始...开始会引发异常的 collections 比如 Tabs, Pages, Controls(listBox, TextBox),Excel 里面的复杂类型下标都是 1 开始 字典类型 下标为键值 在代码中尽量使用...LBound 和 UBound 来获取数组最小和最大下标,可以在模块中使用option base 1 来指定下标 1 开始 VBA 数组下标详解 VBA option base 使用 关于 Excel...所以不要依靠 Worksheet.UsedRange.Rows 来获取最后一行而应该使用参考链接的方法 关于获取 Excel last rows 为什么 vb 中使用 Worksheet.UsedRange.Rows.Count...但是如果有两个分别在两个模块中,想在 A 模块的函数中调用 B 中的函数并捕获 B 函数的异常,就会报个警告:Exception 类型异常在「模块 2」中发生但未处理 # 模块 1 Public

1.3K21

Excel催化剂开源第22波-VSTO的帮助文档在哪里?

帮助文档书籍 在Excel对象模型的文档里,貌似是英文的 对于.Net的库资料,还是有人工翻译的 同样VSTO的宿主项的信息,也已经人工翻译的 然后顺着在帮肋文档里跳转出来的其他链接,可以看到msdn...VSTO开发入门 打开网页浏览 网页版变成机器翻译了 Excel对象帮助文档 对一般VBA开发者来说,一点都不陌生,最好的帮助文档就是在录制宏中和VBE的F1中。...但遗憾的是,OFFICE2013之后,不再有离线版的开发文档,并且不再有中文的开发文档。...使用最后一版中文版帮助文档OFFICE2010 就算安装的是OFFICE2013/2016等,只需在其他途径拿到OFFICE2010版的帮助文件,然后用专门的阅读器打开,就可以顺利得到中文版的VBA帮助文档...如若需要可到QQ群里获取。 离线版Excel开发帮助文档 结语 进入VSTO开发的领域,不能单靠一些图书的方式获取帮助,更多地应该是官方文档中获取信息,再辅助用搜索引擎。

1.1K30

Excel催化剂功能第5波-使用DAX查询PowerbiDeskTop中获取数据源

当然问题来了,PowerbiDeskTop的使用广度和使用深度,都远远没法和Excel相提并论,为了单纯的建模方便或用户使用方便而需要在Excel和PowerbiDeskTop之间做二选一的抉择的确让人非常左右为难...自从Excel催化剂的诞生,问题已经二选一变成了强强联手,各自做各自最擅长的,鱼和熊掌都可兼得的理想人生从此拉开了帷幕!...https://www.jianshu.com/p/534803771c20 Excel催化剂功能第5波-使用DAX查询PowerbiDeskTop中获取数据源 - 简书 https://www.jianshu.com...Excel透视表向PowerbiDeskTop发出MDX查询 当关系型数据库可以使用SQL和数据库内的表进行查询时,数据数据库存储到最终查询使用提供了很大的便利性,而且SQL查询也因其简单易学,功能强大...擅长技术领域:Excel等Office家族软件、VBA&VSTO的二次开发、Sqlserver数据库技术、Sqlserver的商业智能BI技术、Powerbi技术、云服务器布署技术等等。

6.4K30

Excel催化剂开源第41波-网络采集库及工具分享

,在Excel催化剂开发过程中,也会用到,在此向大家简单分享,希望对VBA转VSTO开发群体有所帮助。...同样地,现在使用它,我都是用的是我以前学习nuget封装时上传到nuget的一个版本,有兴趣的也可以直接nuget上获取,和苏飞的一模一样的,哈哈。...直接Nuget上就可以获取到封装好的苏飞版httphelper RestSharp 同样一个强大的第三方库,笔者接触到的是这个库,用于调用WebAPI接口非常方便,在SM.MS图床调用上也简单介绍到...Github上的RestSharp HtmlAgilityPack库 此类库对于解释html页面特别好用,类似于python的Beautifulsoup4那样,可以将网页的html格式,转换为xml格式...Excel催化剂文件下载功能 最后,老规则,附上真实完整的Excel催化剂代码,此代码为文件下载功能,简单使用WebClient库去实现,对其封装了一下,增加超时功能,同时使用了异步的方式调用,不卡界面

1.1K30

python selenium 微信公众号历史文章随手一点就返回首页?郁闷之下只好将他们都下载下来。

思路: 1、使用selenium打开微信公众号历史文章,并滚动刷新到最底部,获取到所有历史文章urls。 2、对urls进行遍历访问,并进行下载到本地。...实现 1、打开微信客户端,点击某个微信公众号->进入公众号->打开历史文章链接(使用浏览器打开),并通过开发者工具获取到cookies,保存为excel。 ?..." style="display: none;">关注公众帐号,接收更多消息 使用driver控制JS。...组建成菜单形式的文章,可参考 记一次 excel vba 参考手册爬虫实战,不必要的一次爬虫。...2、cookies使用的时候是人为获取,如果太长时间不用,需要重新获取。可以考虑结合pyautogui来控制weixin客户端来进行获取。?

69542

Python代替Excel VBA,原来真的可以

点击“博文视点Broadview”,获取更多书讯 ▊ VBA与Python:当王者荣耀遇到卷王之王 VBA语言是VB的一个子集,具有简单易学、功能强大的特点。...所以,xlwings实际上有两种使用方式,一种是使用VBA语法的API使用方式,另一种是使用封装后的新语法的使用方式。...【Python xlwings】>>> sht["1:1"].select() 使用xlwings的新语法工作表中获取一个单行或单列区域的值,返回的是一个列表表示的一维数组。...【Python xlwings】>>> lst=sht.range("A1:A5").value>>> lst[1.0, 2.0, 3.0, 4.0, 5.0] 使用Excel VBA获取到的则是一个二维数组...关于Python与Excel VBA语言对照学习方面的图书我们正在撰写,敬请关注。我们愿意以最贴心的服务,为您Excel VBA快速平稳过渡到Python保驾护航。 扫码抢购!

2.7K20

(ExcelVBA编程入门范例)

很喜爱VBA,喜欢使用她对Excel操作实现所需的功能,更喜欢使用VBA控制Excel以及实现结果后的那种感觉。...■ 分16章共14个专题,以具体实例来对大多数常用的ExcelVBA对象进行讲解; ■ 一般而言,每个实例都很简短,用来说明使用VBA实现Excel某一功能的操作; ■ 各章内容主要是实例,即VBA...图00-08:VBE编辑器窗口(带有用户窗体) 在VBE编辑器中输入VBA代码 如前所述,您可以选择VBE菜单“插入——用户窗体/模块/模块”来插入模块或用户窗体以及相应的代码窗口。...此外,您也可以在“工程资源管理器”中单击鼠标右键,弹出的菜单中选择“插入——用户窗体/模块/模块”来实现上面的操作。在获取相应的代码模块窗口后,就可以输入VBA代码了。...2003高级VBA编程宝典 (2)Excel 2003与VBA编程入门到精通(中文版) (3)巧学巧用Excel 2003 VBA与宏(中文版) (4)ExcelVBA应用程序专业设计实用指南

4.1K20

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

点击“博文视点Broadview”,获取更多书讯 面向Excel数据处理自动化的脚本编程,目前主要有VBA和Python两种语言可供选择。...所以,Python用户在了解Excel对象模型的过程中需要参阅大量VBA的资料,即他们有快速掌握VBA语言的需求和获取xlwings基础性文档和使用手册的需求。...xlwings包将Excel对象模型中一些常用的功能使用新语法进行封装,其他功能用API方式进行调用。但实际上,使用API方式可以以VBA的语法完成几乎所有的编程。...PART 04 用VBA和Python操作Excel工作表 由于xlwings封装了VBA使用Excel对象模型,所以,Python使用xlwings可以操作Excel表格,可以表格读取数据、将数据写入表格...通过阅读本书,读者能以最快的速度,系统地Excel VBA脚本编程转入Python脚本编程,或者Python脚本编程转入VBA脚本编程,或者同时学会两种脚本编程方法。

2.7K50

再见 VBA!神器工具统一 Excel 和 Python

二、使用方法 这样做有什么用处呢? 1、Excel和Python共享数据 比如,我们要将数据Excel导入Python。...Excel调用Python函数 使用Excel离不开函数,而当我们需要一些复杂功能时,自带函数未必能满足我们的需求。...https://www.pyxll.com/docs/userguide/vba.html Jupyter Notebook在Excel中运行,整个Excel对象都可用,所有操作就像在VBA编辑器中编写...在Excel中运行Jupyter Notebook,一切变得就不一样了! 使用PyXLL的xl_app函数获取Excel.Application对象,该对象等效于VBA中的Application对象。...Excel和Python共享数据 在Excel使用Python绘图 Excel调用Python函数 替代VBA脚本 不得不说这个工具是真的香,喜爱Python的同学可以不用学习VBA了,Python

5.1K10

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

所以,Python用户在了解Excel对象模型的过程中需要参阅大量VBA的资料,即他们有快速掌握VBA语言的需求和获取xlwings基础性文档和使用手册的需求。...xlwings包将Excel对象模型中一些常用的功能使用新语法进行封装,其他功能用API方式进行调用。但实际上,使用API方式可以以VBA的语法完成几乎所有的编程。...PART 04 用VBA和Python操作Excel工作表 由于xlwings封装了VBA使用Excel对象模型,所以,Python使用xlwings可以操作Excel表格,可以表格读取数据、将数据写入表格...通过阅读本书,读者能以最快的速度,系统地Excel VBA脚本编程转入Python脚本编程,或者Python脚本编程转入VBA脚本编程,或者同时学会两种脚本编程方法。...购书后扫描封底二维码进群,前100名还可免费获取配套视频课程(Excel VBA课程和Excel Python xlwings视频课程,共计60+小时)。 快来看看这本书吧!

2.9K40
领券