问题标签 [userform]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
excel - 将 3 个 Excel 列插入 1 个标签
我有三列数据。有没有办法使用 vba 将信息插入到 userForm 上的标签中?
这是我拥有的更新代码:
excel - 向标签添加滚动条
我在 userForm 上有一个标签,其中的数据采用列表形式。数据比标签长。在不展开标签的情况下,有没有办法给它添加滚动条?或者还有其他选择吗?基本上我想要一个没有滚动条的框,除非列表比框长,然后有一个滚动条。
使用 Excel vba 用户窗体
excel - 找不到方法或数据成员
运行代码时出现此错误。这是这篇文章的延续: 向标签添加滚动条
我首先创建了一个用户表单,其中包含从工作表中检索信息的标签。我想要添加一个滚动条,以便如果标签比标签长,我可以查看标签中的列表。我被告知尝试一个文本框。我从我的代码中提取了这一行:
并复制它并在其后为文本框添加一个数字 1,因此文本框的代码是:
正是这一行出现了错误(帖子的标题)。
vba - Excel VBA 用户窗体 - 发生变化时执行 Sub
我有一个包含大量文本框的用户表单。当这些文本框的值发生变化时,我需要通过调用子例程 AutoCalc() 根据文本框的值重新计算最终结果值。
我有大约 25 个框,我不想将 Change() 事件单独添加到调用所述子例程的每个文本框。每当某些值发生变化时,调用 AutoCalc() 的最快和最有效的方法是什么?
excel - 显示货币的 VBA 文本框
我有一个带有许多用于用户输入的文本框的表单(这是在用户表单中,不在电子表格中)。我有几个与货币相关的框,当用户在框中输入他们的标准时,我需要它们显示逗号和小数点。到目前为止,我在网上找到了一堆相同的公式,但是当我在框中输入我的数字时,它会显示 4.00(如果我先打 4),之后我可以更改的是第二个 0。这是我看到的类似内容在线的:
也看到了一些与 cDbl
无论我尝试什么,它都不会让我输入超过我输入的第一个数字的任何内容。我需要帮助。谢谢!
excel - 将用户窗体与 Excel 中的单元格对齐
我试图在 Excel 中放置一个用户表单(名为 UserForm1)以与 Excel 中的单元格引用对齐。如果我使用下面的第一个代码初始化表单,则用户表单的大小正确,位于 Excel 屏幕的中心。
但是,我想调整大小以对齐用户窗体,使其覆盖单元格 B3:D15。我试过了
但用户窗体出现在功能区上(Excel 缩放为 100%。)
考虑到屏幕分辨率/缩放大小,有没有办法正确执行此操作?
vba - 使用属性窗口识别窗体上的控件
在窗体上选择一个控件后,在属性窗口的最顶部会显示控件的名称和类型,并且在下方的下拉菜单中有一个包含更多控件的列表。如果我单击其中一个列表项,它会选择表单上的该控件。
1) 这个下拉菜单的正确名称是什么?
2) 是什么决定了哪些控件出现在下拉列表中?
3) 我怎样才能让任何给定的控件出现在下拉列表中?即在一个非常繁忙的表格上,我知道我在某个地方有一定的控制权,但我看不到它。我想在下拉菜单上选择它,这样它就会知道它的位置,但我不知道如何在那个菜单上找到它。
vba - 如何恢复被困在 Frame 边缘之外的控件?
这仅影响 Frames,我只在 Excel 11 中遇到过它,但由于它显然是一个错误,它可能已在我没有尝试过的更高版本中修复。如果你经常使用 Frames,这最终会咬你一口。
问题
从 Frame 和该 Frame 中包含的任何其他控件开始,假设是 Label。抓住标签的右边缘(交叉箭头)并将其拖过框架的左边框,直到您看到它的虚线轮廓出现在框架之外。然后,在不释放鼠标的情况下,将其拖回边框,直到轮廓消失,然后在该点释放鼠标。
你会发现你的标签消失了。它被困在看不见的地方,无法带回来。只是放大框架不会显示它。这与 Frame 的顶部边框的工作方式完全相同,抓住标签的底部边框将其向上和向后拖动。
它与底部和右侧框架边框类似,除了在这里您可以通过放大框架来恢复标签。但顶部和左侧边框并非如此。
可以将缺少的标签添加到(它显示在“属性”下拉菜单中),但这不会选择它,也不能删除它,因为它不能被选择。单击“属性”下拉列表中的标签名称不会执行任何操作。
如果您知道哪个 Frame 吞下了 Label(就像我们在本示例中所做的那样),并且如果您知道它位于该 Frame 的哪个边框之下(就像我们在本示例中所做的那样),那么就有一种方法可以恢复丢失的 Label。但很多时候情况并非如此。除非你真的看到标签消失了,否则它很容易被忽视,尤其是当框架相互重叠时。
恢复标签的一种方法(从已知框架上的已知边框下)是使用 Stephen Bullen 的 VBE 工具,(即使不考虑这个问题,如果你没有安装这个美妙的插件,你应该)。单击框架(您知道隐藏某些内容)并从编辑菜单中选择全部(Ctrl+A对此不起作用)。然后按住Alt-right+ arrow(因为这里知道丢失的标签在 LH 边框下方)并观看标签从 Frame 边框下方尴尬地爬出。这比仅选择全部并将所有控件向右拖动要好,因为它允许您通过反转过程将所有其他控件替换到其原始位置(Alt-Left+ Arrow) 直到事情再次看起来正确。如果您需要将其他控件像素完美地恢复到其原始位置,只需计算右箭头的点击次数,处理恢复的标签,再次全选,然后进行相同次数的左箭头点击。
问题
1)如果我不知道它在哪个框架下,我如何找到并恢复和/或删除以这种方式被框架捕获的控件?
vba - vba:用户表单功能
我有一个从用户窗体上的按钮激活的子程序。点击的基本程序是
1)根据用户输入运行我的子
2) 选择结果表
3) 显示我的结果
4)卸载我的用户表单
我遇到了一个问题,因为我想尝试对用户输入值设置界限,如果用户输入超出范围的内容,则会弹出一个消息框,通知他们该范围。我已经能够通过使用 if/then 循环来完成这个简单的任务。用户退出消息框后,我希望将用户表单与原始用户输入一起显示,并允许用户更改他们的输入。但是目前在用户单击消息框上的“确定”后,我的点击子继续其过程并卸载我的用户表单并选择我的结果工作表。是否有一个简单的一行代码可以放在我的 msgbox 状态之后以保留用户表单,而不是让用户重新输入他们的值?
编辑 - 我的代码的一般要点如下:
excel - 无效的外部程序
我想在字符串“path”中存储一个路径,该路径可用于整个工作簿。
当我按照以下方式执行此操作时,出现错误:“无效的外部程序”
这是我尝试在(常规)(声明)中声明路径的方式
我在以下位置收到错误: