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

VBA技巧:不保护工作簿情况下防止删除工作

标签:VBA 下面介绍一个使用少量VBA代码实现简单实用小技巧。 通常情况下,我们执行“保护工作簿”命令后,此时删除工作命令变成灰色,用户就不能轻易地删除工作了。...然而,这样也不能进行插入、移动或复制工作操作了。 如果想要在不保护工作簿情况下防止用户删除工作,而且允许用户插入工作并对其进行重命名,也允许用户移动或复制工作,有没有什么好方法实现?...工作簿ThisWorkbook模块中粘贴或输入下面的代码: Option Explicit Private Sub Workbook_SheetDeactivate(ByVal Sh As Object..." End Sub Sub RemoveProtection() '撤销保护工作簿 ThisWorkbook.Unprotect End Sub 此时,用户再要删除工作簿工作,就会弹出...警告信息(如下图1所示),但用户仍可以工作簿中进行添加工作、移动或复制工作、对工作重命名等操作。 图1

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

快速汇总多个工作簿工作数据(Excel工具推荐)

比方,我们有以下三个工作簿 这三个工作簿含有第一季度各品牌各个国家销售数据,又分为若干不等工作。...最笨办法是挨个打开这些工作簿,手动将数据源串联起来,然后做数据透视。可是 1.有时候数据源过大,超出单个Excel文件承载范围,你无法串联。...然后有一天我ExcelHome论坛发现了版主写一个神器,可以自动生成SQL语句,实现跨工作簿/工作进行数据汇总透视。(点击阅读原文可以找到工具下载链接)下面介绍下该工具使用方式。...可以看到 1.所有工作簿所有工作都显示了左侧列表里。这个时候我们可以选择部分工作簿/工作进行汇总,也可以全选,看需求而定。此处我们全选。...3.可以看到有“插入工作簿名”,“插入工作名”按钮,这两个按钮意思是是否需要将工作簿/工作名称作为数据透视字段,此处我们假设想看各月汇总情况,因此需要点击“插入工作簿名”。

10.5K10

Excel应用实践21:实现工作簿所有工作多值替换

学习Excel技术,关注微信公众号: excelperfect 有两个工作簿,一个工作簿中存放着要查找并替换成文本,如下图1所示,列A中是要查找文本,将列A中查找到文本替换成列B中相应文本,例如...图1 另一个工作簿中是我们要替换其文本工作簿,我们要在该工作簿所有工作中查找上图1列A中值并将找到文本替成列B中文本,如图2所示。 ? 图2 要实现结果如下图3所示。 ?...图1所示工作簿中,打开VBE,插入一个标准模块,输入代码: '查找并替换指定工作簿多个文本 Sub MultiFindReplace() Dim ReplaceListWB As Workbook...).CurrentRegion '遍历要替换文本工作簿中所有工作 For Each wks In ReplaceInWB.Worksheets '使用替换文本来替换工作数据...选择工作簿文件后,将根据上图1工作文本自动对该工作簿文本进行查找和替换操作。 ? 图4 代码图片版如下: ?

2.9K10

Excel 工作簿中定义决策(Oracle Policy Modeling-Define decision tables in Excel workbooks)

文档中可以创建任意数量规则工作。...如果要在规则中使用文本 函数,需要用圆括号将函数文本括起来。 Excel创建规则 当您向项目中添加 Excel 文档时,此文档规则表工作将包含如下所示规则模板: ?...要在 Excel 中编写包含单个条件和单个结论简单规则,请执行以下步骤。在此示例中,我们将根据人员国籍推 断出其是哪国人。注:变量属性应先在属性文件中声明才能在 Excel 中使用。...在此示例中,您有三个包含以下规则其他工作。请注意,必须根据“应用”列中提 供名称给工作加标题(区分大小写)。 ? 将在 Oracle Policy Modeling 中创建以下规则: ?... Excel 规则中使用实体属性 您可以证明 Excel 规则实体层属性,但是,所有结论属性都必须在同一实体中。

4.1K30

Excel公式技巧14: 工作中汇总多个工作中满足条件

“三维”是经常应用于Excel中特定公式通用术语,这些公式不仅可以对单列或单行进行操作,也可以对由多列或多行组成单元格区域进行操作,还可以有效地对多个工作进行操作。...本文提供了一种方法,在给定一个或多个相同布局工作情况下,可以创建另一个“主”工作,该工作仅由满足特定条件所有工作数据组成。并且,这里不使用VBA,仅使用公式。...图3 想要创建一个主工作Master,其数据来源于上面三个工作中列D中值为“Y”数据: ?...D2:D10"),"Y")) 如果不熟悉跨多个工作使用公式技术,那么应记下使用INDIRECT这种公式构造,因为它实际上是我们执行此类计算唯一方法。...k值,即在工作Sheet1中匹配第1、第2和第3小行,工作Sheet2中匹配第1和第2小行,工作Sheet3中匹配第1小行。

8.7K21

Excel实战技巧74: 工作创建搜索框来查找数据

本文主要讲解如何创建一个外观漂亮搜索框,通过它可以筛选数据并显示搜索结果。...As Worksheet Dim lngField As Long Dim rngData As Range Dim vSearch As Variant '赋值工作变量...图5 可以在此基础上进一步添加功能,例如,搜索完成后,我想恢复原先数据,可以工作中再添加一个代表按钮矩形形状,如下图6所示。 ?...但细心朋友可能发现,由于我们使用是文本框和形状,因此会出现Excel编辑形状线,特别是输入文本后,单击形状前,都需要在其他单元格中单击一下,才能再单击形状。这可能会带来不便!...你可以使用ActiveX控件,或者直接使用单元格,或者使用快捷键来执行宏。我们编写代码中,有很多注释掉代码语句,可供参考。

14.6K10

使用ADO和SQLExcel工作执行查询操作

学习Excel技术,关注微信公众号: excelperfect 我们可以将存储数据工作当作数据库,使用ADO技术,结合SQL查询语句,可以工作中获取满足指定条件数据。...VBE中,单击菜单“工具——引用”,“引用”对话框中,找到并选取“Microsoft ActiveX Data Objects 6.1 Library”,如下图1所示。 ?...图1 下面,需要将工作Sheet2数据中物品为“苹果”数据行复制到工作Sheet3中,如下图2所示。 ?...同一代码中,只需要连接数据库一次,接着可以执行多个查询操作,无需每次查询前都进行连接。...SQL查询语句为: query = "Select * from [" & wksData.Name _ & "$] Where 物品='苹果' " 工作wksData中查询物品为“苹果”记录

4.3K20

Excel公式技巧94:不同工作中查找数据

很多时候,我们都需要从工作簿工作中提取数据信息。如果你在给工作命名时遵循一定规则,那么可以将VLOOKUP函数与INDIRECT函数结合使用,以从不同工作中提取数据。...假如有一张包含各种客户销售数据,并且每个月都会收到一张新工作。这里,给工作选择命名规则时要保持一致。...也就是说,将工作按一定规则统一命名。 汇总表上,我们希望从每个月份工作中查找给客户XYZ销售额。...假设你单元格区域B3:D3中输入有日期,包括2020年1月、2020年2月、2020年3月,单元格A4中输入有客户名称。每个月销售结构是列A中是客户名称,列B中是销售额。...当你有多个统一结构数据源工作,并需要从中提取数据时,本文介绍技巧尤其有用。 注:本文整理自vlookupweek.wordpress.com,供有兴趣朋友参考。 undefined

12.9K10

Python操控Excel:使用Python主文件中添加其他工作簿数据

标签:Python与Excel,合并工作簿 本文介绍使用Python向Excel主文件添加新数据最佳方法。该方法可以保存主数据格式和文件中所有内容。...终端使用下面的命令安装: pip install xlwings 示例文件 本文用到了两个示例Excel工作簿: 主文件.xlsx 新数据.xlsx 可以到知识星球App完美Excel社群下载。...图2 可以看出: 1.主文件包含两个工作,都含有数据。 2.每个工作都有其格式。 3.想要在每个工作最后一行下面的空行开始添加数据。如图2所示,“湖北”工作中,是第5行开始添加新数据。...使用Python很容易获取所有Excel工作,如下图3所示。注意,它返回一个Sheets对象,是Excel工作集合,可以使用索引来访问每个单独工作。...那么,我们Excel中是如何找到最后一个数据行呢?可以先选择单元格A1,然后按下Ctrl+向下箭头键,则会移至最后一行(对于图2所示工作来说是第4行)。

7.8K20

Excel实战技巧79: 工作创建让输入密码显示*号登录界面

学习Excel技术,关注微信公众号: excelperfect 工作中,我们可以创建简单用户名和密码登录框,并且像专业密码框界面那样,在用户输入密码时显示是*号。...第1步:工作中添加文本框 单击功能区“开发工具”选项卡“控件”组中“插入——ActiveX控件——文本框“,如下图1所示。 ?...图1 工作中插入两个文本框,并将其大小和位置进行适当地调整,如下图2所示。 ? 图2 第2步:设置文本框属性 要想使得文本框中输入时掩盖其中内容,需要设置其属性。...注意,在这种情况下,虽然看起来输入密码被掩盖了,但仍然存储工作中,这样他人可轻松从文本框中提取密码。...此外,如果回到属性设置,将PasswordChar中特殊字符删除,那么文本框中密码也会显示出来。因此,想要更加安全地使用密码,需要考虑其他方法。

3.7K10

Excel公式技巧17: 使用VLOOKUP函数多个工作中查找相匹配值(2)

我们给出了基于多个工作给定列中匹配单个条件来返回值解决方案。本文使用与之相同示例,但是将匹配多个条件,并提供两个解决方案:一个是使用辅助列,另一个不使用辅助列。 下面是3个示例工作: ?...16:使用VLOOKUP函数多个工作中查找相匹配值(1)》。...注意,定义名称时,将活动单元格放置工作Master第11行。 名称:Arry1 引用位置:=MATCH(TRUE,COUNTIFS(INDIRECT("'"&Sheets&"'!...C:C"}),2012)>0,0) 转换为: =MATCH(TRUE,{0,0,1}>0,0) 结果为: 3 表明工作表列表第3个工作(即Sheet3)中进行查找。...先看看名称Arry2: =ROW(INDIRECT("1:10"))-1 由于将在三个工作执行查找范围是从第1行到第10行,因此公式中使用了1:10。

13.4K10

Excel公式技巧16: 使用VLOOKUP函数多个工作中查找相匹配值(1)

某个工作表单元格区域中查找值时,我们通常都会使用VLOOKUP函数。但是,如果在多个工作中查找值并返回第一个相匹配值时,可以使用VLOOKUP函数吗?本文将讲解这个技术。...最简单解决方案是每个相关工作中使用辅助列,即首先将相关单元格值连接并放置辅助列中。然而,有时候我们可能不能在工作中使用辅助列,特别是要求在被查找左侧插入列时。...因此,本文会提供一种不使用辅助列解决方案。 下面是3个示例工作: ? 图1:工作Sheet1 ? 图2:工作Sheet2 ?...图3:工作Sheet3 示例要求从这3个工作中从左至右查找,返回Colour列中为“Red”对应Amount列中值,如下图4所示。 ?...2个工作即Sheet2中执行VLOOKUP操作。

20.2K21

BI错误处理。

备注为了演示此概念,本文将使用 Excel 工作簿作为其数据源。 此处展示概念适用于Power Query中所有值,而不仅仅是来自 Excel 工作簿概念。...此演示示例数据源是一个包含下表 Excel 工作簿Excel 工作簿标准速率列中出现 Excel 错误,例如 #NULL!、#REF!和 #DIV/0!。...将此导入Power Query编辑器时,下图显示了外观。请注意 Excel 工作簿错误如何随每个单元格中值一起 [Error] 显示。本文介绍如何将错误替换为另一个值。...所有 Errors.Value — 如果 标准速率 列中值没有错误,则此列将显示 标准速率 列中值。 对于出现错误值,此字段将不可用,展开操作期间,此列将具有 null 值。...所有 Errors.Error — 如果 标准速率 列中值出错,则此列将显示 标准速率 列中错误记录。 对于没有错误值,此字段将不可用,展开操作期间,此列将具有 null 值。

2.7K30

VBA实用小程序61: 文件夹内所有文件中运行宏工作簿所有工作中运行宏

学习Excel技术,关注微信公众号: excelperfect 文件夹中所有文件上运行宏,或者Excel工作簿中所有工作上运行宏,这可能是一种非常好Excel自动化方案。...currWb.Path If fDialog.Show = -1 Then folderName =fDialog.SelectedItems(1) End If '创建一个单独不可...2.打开一个单独Excel进程(应用程序),然后逐个打开每个文件。 3.使用要在每个打开工作簿上运行代码替换“在这里放置你代码”部分。 4.每个打开工作簿关闭时不会保存所作修改。..." End Sub 工作簿所有工作中运行宏 代码如下: '本程序来自于analystcave.com Sub RunOnAllWorksheets() Dim folderName As String..." End Sub 代码中: 1.打开ActiveWorkbook中每个工作而不是ActiveSheet,可以根据需要删除If语句。

4.4K11

Excel 基本概念以及 Excel 文件创建

这样在当前目录下便生成了一个 Excel 文件。如下图所示: 3.2 工作创建 讲完工作簿创建后,我们来看下工作创建。...由于创建 Workbook 对象 wb 时已经默认创建了一个工作 Sheet,所以调用 create_sheet 创建 MySheet 工作之后,工作簿中包含了两个工作 Sheet 和 MySheet...如下图所示: 上面调用 create_sheet 方法创建工作时,只传入了工作名称。...执行完上述代码后,工作簿工作情况如下图所示: 3.5 获取活跃 用户当前查看(或关闭 Excel 前最后查看),称为活动。通过代码我们可以获取活跃。...,删除工作 MySheet2 并保存之后,工作簿工作如下图所示: 可以看到工作 MySheet2 已经被删除

86020

Excel编程周末速成班第3课:Excel对象模型

工作簿名称要么是你使用SaveAs方法赋给名称(本课程后面部分介绍),要么是Excel创建工作簿时赋给默认名称(工作簿1、工作簿2,等)。Save方法不带任何参数。...本节提供有关使用Worksheet对象重要信息。 添加和删除工作 要将新空白工作添加到工作簿,使用Worksheets集合Add方法。...当代码尝试删除工作时,Excel通常会向用户显示提示,要求他或她确认删除操作。...要将工作复制到另一个工作簿,省略After和Before参数。Excel创建一个新工作簿,然后将工作复制到其中。 提示:无法将工作直接复制或移动到现有工作簿。...提供了用于创建工作簿和打开现有工作簿,保存和关闭工作簿以及其他必需任务方法。 工作由Sheets集合中Sheet对象表示。你可以根据需要添加、删除、复制和移动工作

5K30

ChatGPT与Excel结合_编写VBA宏

VBA允许用户编写自定义脚本或宏,以便通过执行一系列指令来自动完成特定任务。 使用Excel VBA宏,你可以创建和编辑工作、处理数据、执行计算、生成报表、自定义用户界面等。...Set sourceSheet = ThisWorkbook.ActiveSheet ' 创建工作簿 Set newWorkbook = Workbooks.Add...End Sub 运行该宏后,它会遍历工作薄中每个工作,并将每个作图片移动到A1单元格位置。移动图片之后,会弹出一个提示框显示操作已完成。...---- 案例3 我需求是:编写一个Excel VBA宏,删除当前Excel工作簿里边所有的图片 Sub DeleteAllPictures() Dim ws As Worksheet...End Sub 运行该宏后,它会遍历当前Excel工作簿每个工作,并删除每个工作所有图片。删除图片之后,会弹出一个提示框显示操作已完成。

45010
领券