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

使用VBA创建下拉列表时出现问题。下面提到的代码创建了下拉列表,但每次重新打开文件时都需要修复

问题描述: 使用VBA创建下拉列表时出现问题。下面提到的代码创建了下拉列表,但每次重新打开文件时都需要修复。

解决方案: 这个问题可能是由于VBA代码中的一些设置导致的。下面是一种可能的解决方案:

  1. 确保你的VBA代码正确无误。检查代码中是否有任何错误或拼写错误。
  2. 确保你的代码在正确的位置执行。你可以将代码放在Workbook_Open事件中,以确保在打开文件时自动执行。
  3. 确保你的代码在正确的工作表上执行。如果你的下拉列表是在特定的工作表上创建的,确保代码中指定了正确的工作表。
  4. 确保你的下拉列表的数据源正确。检查代码中指定的数据源是否存在,并且数据源的范围是否正确。
  5. 确保你的下拉列表的数据源是静态的。如果你的数据源是通过公式计算得出的,每次打开文件时都需要重新计算,这可能导致下拉列表需要修复。尝试将数据源改为静态的,或者在打开文件时自动计算数据源。
  6. 如果以上方法都没有解决问题,尝试使用Excel的内置功能来创建下拉列表。在Excel中,你可以使用数据验证功能来创建下拉列表,而不需要使用VBA代码。这种方法可能更可靠,并且不会出现需要修复的问题。

总结: 使用VBA创建下拉列表时出现问题可能是由于代码错误、位置错误、工作表错误、数据源错误、数据源动态计算等原因导致的。通过检查代码、位置、工作表、数据源,并尝试使用Excel的内置功能来创建下拉列表,可以解决这个问题。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

Excel实战技巧108:动态重置关联下拉列表

本文主要讲解如何使用少量VBA代码重置Excel中相关联下拉列表。...下面将介绍如何在第一个下拉列表值发生变化时自动重置与其关联列表值,这里使用ExcelVBA执行此操作,使用了工作表对象Change事件过程。...在这种情况下,最好使用工作表对象Change事件并确保它仅在特定单元格值发生更改时运行,而不是每次更改任何单元格值触发该事件过程。...如下图1所示,我们创建了一个级联列表,当单元格C2中选择不同分类,在单元格C6中会出现不同下拉列表项。例如,在单元格C2中选择“水果”,单元格C6中将显示相关水果名称,可以从中选择水果名。...打开VBE,在左侧“工程资源管理器”中,双击数据验证所在工作表名,在右侧代码窗口顶部,左侧下拉列表选择“Worksheet”,右侧下拉列表选择“Change”,如下图3所示。

4.5K20

Excel揭秘25:突破数据有效性列表字符限制

当然,这样限制不会带来问题,因为你还可以使用单元格区域中数据作为数据列表来源。 但是,有趣是,使用VBA代码编程,却也可以给数据列表提供大于255个字符字符串。...下面代码创建了一个逗号分隔344个字符字符串,并在A1中创建了一个数据有效性列表。...图2 可以看到,下拉列表项从“项目0”至“项目70”,共有344个字符。 下面,让我们核查一下这个超长列表是否被保存了。将工作簿保存为.xlsm文件后,关闭该工作簿。...图3 关闭打开压缩文件夹,将其扩展名改回.xlsm,然后在Excel中打开,你会发现Excel弹出下图4所示提示信息。 ? 图4 如果单击“是”,选择修复,将会弹出下图5所示提示信息。 ?...你可能会说,我可以在Workbook_Open事件中添加长列表,然后在Workbook_BeforeSave事件中将其删除以避免修复问题,但是使用代码绕过限制字符数没有很好用处。

2.2K20

实用干货|简单9步,教你在PPT中演示动态图表

这个下拉框,PPT 并没有提供地方让你指定下拉选择项和保存选择结果位置,怎么办?这里是难点了,接下来我们需要使用代码从 Excel 里读出选择项列表,赋给下拉框。 4、给下拉框添加选择项。...这个需要使用代码来添加。并且,宏代码需要放在下拉 Got_Focus(获得焦点)事件里,因为每次关掉 PPT 后它都会消失,需要重新赋值。...这段代码所做事情,就是在每次 PPT 放映、下拉框被选择时候,就去打开那个嵌入在 PPT 里 Excel 文件,读取其中 dashboard 工作表 A5:A17 范围,把这些选择项赋给下拉框。...小白需要注意,以上代码并非直接复制到你 PPT 就可以使用需要修改对象名称匹配才行,比如 ComboBox1、Shapes(1)等。 5、写下拉框被选择后动作。...以后需要更新数据,应该更新 PPT 里嵌入对象。不要直接双击打开,这样窗口太小,不方便操作。

4.9K50

VBA专题10-11:使用VBA操控Excel界面之在功能区中添加自定义拆分按钮控件

拆分按钮控件是一个含有单击按钮和下拉按钮列表组合控件。用户可以选择单击按钮,或者从下拉列表中选择单击其中一个按钮来执行相应命令。...添加拆分按钮控件步骤与本系列前面文章(参见:VBA专题10-10:使用VBA操控Excel界面之在功能区中添加自定义切换按钮控件、VBA专题10-9:使用VBA操控Excel界面之在功能区中添加自定义按钮控件...)中步骤相同,新建一个启用宏工作簿并保存,关闭该工作簿,然后在CustomUI Editor中打开该工作簿,输入下面的XML代码: ?...重新打开该工作簿后,在“Custom”选项卡中显示含拆分按钮组,如图1所示。 ?...,会根据按钮不同显示不同消息框,如图2所示为单击按钮Button1显示消息框。

1.8K10

自定义功能区示例:创建用于工作表导航动态组合框

标签:VBA,自定义功能区 在《自定义功能区示例:创建用于工作表导航下拉列表》中,我们在Excel功能区中添加一个自定义选项卡,然后再该选项卡中添加带有下拉列表一个自定义组,用于从下拉列表中选择工作表...我们对此示例进行修改,使用组合框来实现,如下图1所示,并且当用户在该工作簿中新建或删除工作表,组合框中列表项会自动更新。...图1 假设该工作簿名称为CustomDynamicCombobox.xlsm,使用Custom UI Editor for Microsoft Office打开该工作簿,在其中输入代码: <customUI...在Excel中打开CustomDynamicCombobox.xlsm,打开VBE,插入一个标准模块,输入下面代码: Dim Rib As IRibbonUI Dim mwkbNavigation As...Ribbon control comboBox ' End Sub 然后,打开ThisWorkbook代码模块,输入下面代码: Private Sub Workbook_NewSheet(ByVal

27620

自定义功能区示例:自定义文件菜单、上下文菜单、功能区选项卡

标签:VBA,自定义功能区 在《自定义功能区示例:创建用于工作表导航下拉列表》、《自定义功能区示例:创建用于工作表导航动态组合框》中,我们在Excel功能区中添加一个自定义选项卡,然后再该选项卡中添加带有下拉列表或组合框一个自定义组...,可用于从下拉列表中选择工作表,从而快速导航到该工作表,这对于工作簿中有大量工作表且要快速找到相应工作表用户来说,非常有用。...下面介绍一个综合示例,来源于forum.ozgrid.com,分别在工作簿文件菜单、右键上下文菜单中添加了自定义命令,也自定义了一个选项卡。可以作为自定义功能区模板参考。...该工作簿名称为Ribbon and Backstage and Context Menus.xlsm,使用Custom UI Editor for Microsoft Office打开该工作簿,在其中输入代码...在Excel中打开Ribbon and Backstage and Context Menus.xlsm,打开VBE,插入一个标准模块,输入下面代码: Sub OnAction(control As

22610

开发一个在线 Web 代码编辑器,如何?今天来教你!

访问官方网站以查看可用不同主题演示。 让我们创建一个包含不同主题下拉列表,用户可以在我们编辑器中选择这些主题。本文中,我们将添加五个主题,你可以添加任意数量主题。...在上面的代码中,我们使用 label 标签向我们下拉列表添加标签,然后添加 select 标签来创建我们下拉列表。...因为我们需要用我们创建 themeArray 中主题名称填充下拉列表,所以我们使用 .map 数组方法来映射 themeArray 并使用 option 标签单独显示名称。...但有一点值得注意,就是我们不希望在每次输入时重新渲染组件,这就涉及到后续优化地方。...也就是说,每次用户按下一个键,它都会重新开始计数,因此 iframe 只会在用户空闲(未键入)250 毫秒更新。这是避免每次按下键都必须更新 iframe 一种很酷方法。

11.7K30

【实战】快来和我一起开发一个在线 Web 代码编辑器

CodeMirror 主题 让我们创建一个包含不同主题下拉列表,用户可以在我们编辑器中选择这些主题。 本文中,我们将添加五个主题,你可以添加任意数量主题。...在上面的代码中,我们使用 label 标签向我们下拉列表添加标签,然后添加 select 标签来创建我们下拉列表。...因为我们需要用我们创建 themeArray 中主题名称填充下拉列表,所以我们使用 .map 数组方法来映射 themeArray 并使用 option 标签单独显示名称。...但有一点值得注意,就是我们不希望在每次输入时重新渲染组件,这就涉及到后续优化地方。...也就是说,每次用户按下一个键,它都会重新开始计数,因此 iframe 只会在用户空闲(未键入)250 毫秒更新。 这是避免每次按下键都必须更新 iframe 一种很酷方法。

43320

Word VBA技术:创建打开或关闭文档自动运行宏

标签:Word VBA 有多种方法可以使我们在创建打开或关闭Word文档自动运行宏。...此时,在右侧代码窗口顶部,会看到两个列表框。单击左侧下拉列表,将其从“(通用)”更改为“Document”,VBA将自动创建一个名为Document_New()过程。...如果单击右侧下拉列表,将看到很多可供选择事件,其中包含三个事件:New、Open和Close,可以从列表中选择“Close”或“Open”以插入Document_Close()或Document_Open...这样,每当创建基于该模板文档,将运行Document_New()过程;每当打开基于该模板文档,会运行Document_Open()过程;每当关闭基于该模板文档,会运行Document_Close...注意,这些过程不是全局,只有在创建打开或关闭基于模板文档才会触发这些过程。

2.2K30

探索VBA代码编辑器——《Excel VBA宏编程》系列讲座2

VBA代码编辑器在哪儿 在你刚安装好Excel,其界面通常如下图1所示,Excel默认没有显示“开发工具”选项卡。 图1 为了方便编写VBA代码,我们需要调出“开发工具”选项卡。...图3 看看VBA代码编辑器 单击Excel功能区“开发工具”选项卡“代码”组中“VisualBasic”,或者直接使用Alt+F11组合键,都可以打开VBA代码编辑器。如下图4所示。...这些并不是Excel中唯一对象,简单地看一下工程资源管理器,它们就是这里显示对象。 代码窗口 在工程资源管理器中,双击ThisWorkbook,将打开该Workbook对象代码窗口。...在该代码窗口顶部左侧下拉列表中,选择Workbook,如下图6所示。 图6 代码编辑器会自动插入一段代码框架,如下图7所示。...图12 保存包含VBA代码工作簿 在保存含有VBA代码工作簿,我们需要使用xlsm扩展名,如下图13所示,否则Excel会自动删除代码

3.2K20

打破Excel与Python隔阂,xlwings最佳实践

这个工具一个特点是,你操作最后都能转化成 pandas 代码 此工具界面完全使用 Excel 制作(大部分情况下不需要编写任何 vba 代码),后台处理使用 Python(大部分情况使用 pandas...如果我修改了 Python 代码需要重新点击这个按钮吗?...首先,我们之所以能在 Excel 上输入公式,出现我们自定义函数,是因为在这个 Excel 文件中,存在 vba 代码,定义了同名方法: 从 vbe 界面中可以看到,当我们点击"导入函数"按钮...10行结果 你可能会觉得每次修改点一下导入按钮,万无一失。...才重新读取文件(现在是每次执行都加载) 锁定 xlwings 版本,如何能在没有安装 xlwings 电脑上使用工具 你还有其他功能建议吗?

4.9K50

VBA自动筛选完全指南(下)

示例:基于单元格值筛选数据 VBA自动筛选与下拉列表配合,当从下拉列表中选择项目,会自动筛选该项目的所有记录,如下图3所示。...VBA打开/关闭自动筛选 在应用自动筛选,可能已经存在筛选了。...图4 虽然这在已设置了筛选时有效,如果尝试使用VBA代码添加自动筛选,它将不起作用。由于工作表受到保护,因此不允许运行任何宏并对自动筛选进行更改。...因此,需要使用代码来保护工作表,并确保在其中启用了自动筛选。这在创建动态筛选是有用下面代码保护工作表,同时允许在其中使用筛选和VBA宏。...然而,为什么需要使用VBA代码来执行此操作?因为将其与其它代码结合起来,可以创建更加强大自动化工作。 注:本文学习整理自trumpexcel.com,略有修改。

3.3K30

Excel实战技巧:基于单元格值显示相应图片

选择该图片,在公式栏中输入: =CountryLookup 选择单元格D2,使用数据验证创建包括列A中国家名称列表下拉列表。...方法2:使用图表填充+#N/A 与上面相同,在单元格D2中创建数据验证列表,可以在下拉列表中选择国家名。 首先,创建一个将所选国家计算为1,其他国家计算为#N/A公式。如下图4所示。...下拉复制该公式至数据末尾,示例中为单元格B11。 然后,以国家列表和刚创建公式列为源数据(即单元格区域A2:B11),创建一个堆积柱形图,并进行一些格式设置。 最后,添加图像作为每个图表系列填充。...你可以手动一个一个图片填充,也可以使用VBA代码自动完成,代码如下: Sub InsertPicturesIntoChart() Dim i As Integer Dim selectedCells...VBA自定义函数 在VBE标准模块中输入下面代码: Public Function PictureLookupUDF(FilePath As String, Location As Range, Index

8.3K30

Python 最强编辑器详细使用指南!

指定项目位置,打开 Project Interpreter 列表,选择创建项目解释器或者使用已有的解释器。...选择「New environment using」,打开其右方下拉列表,选择 Virtualenv、Pipenv 或 Conda。...选中上图中两种需要测试方法并点击 OK。好了!PyCharm 自动创建文件 test_calculator.py,并在其中创建了以下 stub test: ?...打开下拉列表,选择 Project Interpreter: ? 从下拉列表中选择 virtualenv。如果没有要选择项,则点击下拉列表右方设置按钮选择 Add…。...要想使用它,你需要创建文件 example.py,并在其中写入以下代码: ? 上述代码故意破坏了 Flake8 一些规则。右键单击文件背景,选择 External Tools → Flake8。

2.4K01

人生苦短,我用PyCharm

指定项目位置,打开 Project Interpreter 列表,选择创建项目解释器或者使用已有的解释器。...选择「New environment using」,打开其右方下拉列表,选择 Virtualenv、Pipenv 或 Conda。...选中上图中两种需要测试方法并点击 OK。好了!PyCharm 自动创建文件 test_calculator.py,并在其中创建了以下 stub test: ?...打开下拉列表,选择 Project Interpreter: ? 从下拉列表中选择 virtualenv。如果没有要选择项,则点击下拉列表右方设置按钮选择 Add…。...要想使用它,你需要创建文件 example.py,并在其中写入以下代码: ? 上述代码故意破坏了 Flake8 一些规则。右键单击文件背景,选择 External Tools → Flake8。

1.8K31

数据分析必备技能:数据透视表使用教程

分别对当前“值”列表几个字段,点击其右侧i图标 因为本例中无需计算其默认“求和”,故将这几个字段“汇总方式”改为“平均值” ?...暂时关闭“数据透视表生成器” 该窗口随后可以用“字段列表”按钮重新打开 ? 此时一个基本数据透视表已经成型 ?...以上就是创建数据透视表基本过程。 7 自动化创建 基本数据透视表创建和调整并不复杂,如果有很多类似的重复性工作的话,使用一些简单 VBA 来自动化这一过程,将极大提升工作效率。...本例中使用 VBA 脚本完成与上述例子一样任务,对于 VBA 语言仅做简单注释,想更多了解可以自行查阅官方文档等 1.一键生成 此处我们放置一个按钮在源数据所在数据表,用于每次点击自动生成一个数据透视表...2.脚本编写 点击 Ribbon 中“开发工具”下面第一个按钮“Visual Basic” 在出现“Visual Basic”编辑器中,选择左侧“ThisWorkbook”类目 在右侧编辑区贴入下面代码

4.5K20

人生苦短,我用PyCharm

指定项目位置,打开 Project Interpreter 列表,选择创建项目解释器或者使用已有的解释器。...选择「New environment using」,打开其右方下拉列表,选择 Virtualenv、Pipenv 或 Conda。...选中上图中两种需要测试方法并点击 OK。好了!PyCharm 自动创建文件 test_calculator.py,并在其中创建了以下 stub test: ?...打开下拉列表,选择 Project Interpreter: ? 从下拉列表中选择 virtualenv。如果没有要选择项,则点击下拉列表右方设置按钮选择 Add…。...要想使用它,你需要创建文件 example.py,并在其中写入以下代码: ? 上述代码故意破坏了 Flake8 一些规则。右键单击文件背景,选择 External Tools → Flake8。

2.5K10

Python 最强编辑器详细使用指南

选择「New environment using」,打开其右方下拉列表,选择 Virtualenv、Pipenv 或 Conda。...点击右下角「Create」,创建新项目: 屏幕上出现「Tip of the Day」弹窗,在每次启动 PyCharm 通过该弹窗提供 trick。关掉该弹窗。...PyCharm 自动创建文件 test_calculator.py,并在其中创建了以下 stub test: 使用以下方法中任意一个运行测试: 在 Mac 系统中使用 Ctrl+R 键,在 Windows...打开下拉列表,选择 Project Interpreter: 从下拉列表中选择 virtualenv。如果没有要选择项,则点击下拉列表右方设置按钮选择 Add…。...要想使用它,你需要创建文件 example.py,并在其中写入以下代码: 上述代码故意破坏了 Flake8 一些规则。右键单击文件背景,选择 External Tools → Flake8。

1.9K00

Python 最强编辑器详细使用教程

指定项目位置,打开 Project Interpreter 列表,选择创建项目解释器或者使用已有的解释器。...选择「New environment using」,打开其右方下拉列表,选择 Virtualenv、Pipenv 或 Conda。...选中上图中两种需要测试方法并点击 OK。好了!PyCharm 自动创建文件 test_calculator.py,并在其中创建了以下 stub test: ?...打开下拉列表,选择 Project Interpreter: ? 从下拉列表中选择 virtualenv。如果没有要选择项,则点击下拉列表右方设置按钮选择 Add…。...要想使用它,你需要创建文件 example.py,并在其中写入以下代码: ? 上述代码故意破坏了 Flake8 一些规则。右键单击文件背景,选择 External Tools → Flake8。

2.1K20

Excel事件(一)基础知识

在某种条件触发开关,导致后续动作结果,比如灯亮起或关闭,电热水器开始或停止加热,空调定时打开或关闭等等。 “Excel事件”在VBA程序中也担当了开关角色。...三、事件代码编写位置 在介绍本节之前,通常编写代码都是模块中,即在工程资源管理窗口中,鼠标右键单击,插入/模块,之后在模块中编写相应代码编写事件代码需要相应对象模块中编写。...在代码窗口左上对象下拉列表框中选择workbook对象,右上下拉列表框可以选择workbook对象对应所有事件。...(这里添加命令按钮和以前用表单控件有所不同)。 窗体创建后,编写窗体和代码事件代码,就需要打开窗体代码窗口。在窗体上双击即可。...打开窗体对象对应代码窗口,可以看到左上列表中分别有userform窗体、checkbox1复选框和commandbutton1命令按钮等对象,选择需要对象后,右侧下拉列表中出现相应事件。

2K40
领券