Tag: userform

VBA如何在单元格下正确显示UserForm?

我想在放置在单元格中的button下方显示UserForm,以便它可以模拟某个popup窗口(就像下拉列表一样)。 我通过networking尝试了很多解决scheme,但都没有成功。 主要的问题是我无法获得表单元格或button的绝对屏幕位置。

用checkbox创build下拉菜单

我有一个用户表单,并想创build一个combobox,并在其中有checkbox。 我的目标是一次select多个选项并显示它们。 我想有这样的事情: [ 这是可能的,我怎么能这样做? 任何潜在客户都会有帮助。

Excel VBA – 将多个用户表单checkbox值写入单个单元格

我正在尝试从具有4个checkbox选项的用户窗体传递的值,并将它们写入单个连接的单元格。 当我像这样select我的用户表单: 我想将它保存到一个单元格中,如下所示: 我试着用下面的代码来完成这个(见下面的代码),但是如果没有第一,第二,第三或者第四个选项的话,它就不适用于逗号。 我相信有一个更好的方法,但我无法弄清楚或在网上find答案。 Private Sub cmdSave_Click() Dim colors As String If chkRed = True Then colors = "Red" Else colors = colors End If If chkBlue = True Then colors = colors & ", Blue" Else colors = colors End If If chkGreen = True Then colors = colors & ", Green" Else […]

Excel – 返回所选选项button的标题

可能是一个简单的答案愚蠢的问题,但我是一个真正的新手,当涉及到用户forms。 我有带有5个不同选项button(Dest1,Dest2,Dest3,Dest4,Dest5)的“Frame 3”。select一个选项后,所选选项的标题值在哪里存储? 我怎样才能访问与vba。 谢谢,乔希

当用户窗体打开时启用excel工作簿

我有一个工作簿打开工作簿时打开用户窗体。 这导致了一个问题,因为它然后禁用所有打开的Excel工作簿,因此用户不能更改其他工作簿 有没有办法让用户仍然编辑/打开其他打开的工作簿,仍然保持打开用户表单? 提前致谢

禁用VBA UserForm'x',但仍允许卸载我

我有一个用户表单,closures时需要运行清理步骤。 我想为Xbutton被禁用和/或不可见,但我仍然需要能够卸载的forms。 我已经使用下面的代码,但是它也阻止了Unload Me 。 'Disables closing via x button Sub UserForm_QueryClose(Cancel As Integer, ClsoeMode As Integer) If CloseMode = vbFormControlMenu Then MsgBox ("BLOCKED") Cancel = True End If End Sub

导入和导出用户窗体和模块

帮帮我! 我找不到任何地方…我已经find了很多的.frx文件的解释,但这不是问题。 我已经导出了2个模块“.bas”和一个用户表单“.frm”,它们也创build了“.frx”二进制文件。 现在的问题是,现在当我用下面的代码将它们导入到一个新的工作簿中时,在初始化用户窗体时,应用程序打开并尝试在原始工作簿中运行,在该工作簿中我编写了模块并devise了自定义用户窗体。 为什么发生这种情况,是否有办法让它加载窗体和​​模块导入到工作簿中的用户窗体? Sub Import_VBA(WBName) Dim VBc As Variant Dim exportFolder As String, VBcExt As String, testFile As String Dim newWB As Workbook testFile = WBName exportFolder = "y:\ECI\Database\Outputs\InterfaceApp" Set newWB = Workbooks(testFile & ".xlsm") ''''' Test VBA protection On Error Resume Next If newWB.VBProject.Protection <> 0 Then If Err.Number = 1004 Then […]

将ListObject列添加到Userformcombobox列表时出错

我有一个用户表单,我命名为UFCustInfo。 在工作表区域,我有一个macros来显示窗体 – Private Sub CmdShowInputForm() UFCustInfo.Show End Sub 这被分配到工作表上的一个button(表单控件)。 在用户窗体中,我也有一个初始化例程来填充用户窗体上的combobox – Private Sub UserForm_Initialize() Me.CBCustName.List = ActiveSheet.ListObject("CustInfo").ListColumns(1).DataBodyRange.Value End Sub 当我单击命令button来显示窗体,我得到运行时错误'438':对象不支持此属性或方法,并debugging突出显示“UFCustInfo.Show”行。 如果我禁用(注释)Initialize行,表单将加载,但(当然)combobox不会填充。 我也有代码来添加新的,清晰的forms和closuresforms,只要我不运行初始化代码,所有运行良好。 我错过了什么?

在工作表的右上angular显示用户表单

我需要我制作的用户表单显示在工作表的右上angular。 我想我可以手动设置位置,但是当工作簿在不同的屏幕分辨率的计算机上打开时,用户窗体几乎完全脱离屏幕。 我下面的VBA代码有什么问题,是为了使用户窗体本身能够显示整个内容,而是在屏幕的右上方? 它只是没有做任何事情,我认为这是因为代码是不正确的。 谢谢您的帮助 Private Sub UserForm_Activate() Me.StartUpPosition = 0 Me.Top = Application.Top + 25 Me.Left = Application.Left + Application.Width – Me.Width – 25 End Sub

操纵11列的列表框

我有一个11列的列表框。 当我尝试将数据添加到其中一列时,出现错误。 ListBox1.Column(10, j) = shtG.Cells(k, 13) 我不明白为什么会发生这种情况,用户窗体上的列表框的列数为11 。 我得到的错误 : “运行时错误380:无法设置列属性。无效的属性值。 所选单元格的值是“组16”。 更多信息: 码: 'adding this doesn't help ListBox1.Clear ListBox1.ColumnCount = 20 While shtG.Cells(k, 1) <> "" If 'some long working condition Then frmTP.ListBox1.AddItem (shtG.Cells(k, kolID)) frmTP.ListBox1.Column(1, j) = shtG.Cells(k, kolVnm) & strSpace & shtG.Cells(k, kolTV) & strSpace & shtG.Cells(k, kolAnm) frmTP.ListBox1.Column(2, j) = […]