Tag: 表单

Userformvalidation使用循环检查空的控件

用户完成input数据后。 当用户点击提交button。 我会检查是否所有的文本框不是空的。 用户将input成员的数量,如果用户input1个成员,我将检查如果member01是空的,如果用户input3个成员,我将检查如果member01,member02,member03是空的它适用于如果其他但我想做它为循环,因为它是十分乏味的我做了10次。 我不知道如何将它从If Else更改为For Loop。 'Using If Else If txtNoMember.Value = "" Then MsgBox "Please enter the Number of Member.", vbExclamation, "Input Data" txtNoMember.SetFocus Exit Sub End If If txtNoMember.Value = 1 And txtMember01.Value = "" Then MsgBox "Member cannot be empty.", vbExclamation, "Input Data" Exit Sub End If If txtNoMember.Value = 2 […]

Backspace键在Excel 2010 VBAcombobox中高亮显示文本,而不是将其删除

这个令人讨厌的小问题让我心有余悸。 我正在为Excel 2010构build一个vba项目,它涉及到几个用combobox填充数据列表的用户窗体。 无论什么原因,在这些combobox中使用时,退格键会突然停止正常工作。 看看这个部分截图: 其中突出显示的方框是"Test Item No.1" , "Test Item No.2"等combobox。所以如果我在那里有"Test Item No.5" ,我想退回5并放入1,我不能再。 它只是亮点。 我再说一遍,因为昨天工作正常。 我已经尝试加载文件的以前的版本,也重新启动我的电脑。 还是行不通。 请帮助!

在用户窗体中自定义颜色的commandbutton

我已经成功地为我的用户窗体中的一个button(commandbutton_1)的字体和背景着色: Private Sub CommandButton1_MouseMove(ByVal Button As Integer, ByVal Shift As Integer, ByVal x As Single, ByVal y As Single) CommandButton1.BackColor = RGB(220, 230, 241) CommandButton1.ForeColor = RGB(0, 0, 0) End Sub Private Sub UserForm_MouseMove(ByVal Button As Integer, ByVal Shift As Integer, ByVal x As Single, ByVal y As Single) CommandButton1.BackColor = RGB(22, 54, 92) CommandButton1.ForeColor […]

将string从用户窗体移到调用表单的活动单元格

目前,我的代码打开一个用户表单,当一个特定的单元格被点击。 我想要的是将input的string移动到用户表单中的文本框中,以移动到被单击的单元格中,以便首先加载表单。 这是调用窗体的代码: dim x as integer For x = 5 To 100 If Target.Address = "$AY$" & x Then UserForm1.Show End If Next x 例如,用户点击单元格AY10,窗体打开,它们将stringinput到TextBox1中。 然后,我需要的是当他们点击一个提交button(Button1)时,string被移动到单元格AY10中,单元格被点击以最初打开表单。

如何使基于单元格值的Excel用户窗体只显示一次

列B中的单元格是下拉列表。 所以,如果有人在B2单元格中select“提醒”,那么UserForm将显示​​出来。 我希望这发生在列B中的每个单元格。我的代码如下完成这一点,但是,用户窗体继续popup每次我在Excel中点击。 即使我已经在我的UserForm中提交的数据。 如何让每个单元格的“提醒”值为一次,而且如果其他单元格以“提醒”formsinput,则可以保持显示表单的能力。 如果B2是唯一一个以“提醒”formsinput的,我不希望表单每次在表单中移动时都会显示。 这是我第一次进入用户窗体,所以我希望我的问题是有道理的。 任何帮助表示赞赏。 谢谢! 码: Sub Worksheet_SelectionChange(ByVal Target As Range) Dim cell As Range For Each cell In Range("B:B") If cell.Value = "Reminder" Then UserForm1.Show End If Next cell End Sub

写入excel的表单

我想知道最简单的方法来写一个简单的表单程序或网页,将输出到一个文本文件,可以轻松地在Excel中打开。 我知道如何用C ++编写,但我不知道任何GUI,我想要一个简单的forms。 我想我可以只写一个HTML / PHP页面,但它必须能够运行没有互联网,但我不知道你是否可以有一个网页附加到文件夹中的文件。 任何人都可以指出我的方向吗?

有没有办法将图像添加到VBA中的MessageBox?

我想知道是否有可能将图像添加到VBA的消息框主要,但如果没有任何其他语言。 MsgReply = MsgBox("InspectionCreator – Continue?", vbMsgBoxSetForeground + vbSystemModal + vbYesNo) If vbYes = MsgReply Then Listener.Connect2SW Else: End End If

停用Excel VBA用户窗体

我在Excel vba中有一些macros,我在Excel表格上执行一些function,大约需要30秒才能完成。 所以我想在这段时间内显示带有进度条的用户表单。 我尝试使用userform.show在函数的最开始和userform.hide结束,但我发现没有行动可以在后台执行。 所以只是想知道是否有任何回头让处理在窗体显示时在后台完成。 非常感谢 :) Private Sub CommandButton1_Click() '————–Initialize the global variables—————- UserForm1.Show nameOfSheet2 = "Resource Level view" nameOfSheet3 = "Billable Hours" nameOfSheet4 = "Utilization" '————————————————————- Dim lastRow, projectTime, nonProjectTime, leaveAndOther Dim loopCounter, resourceCounter lastRow = 0 projectTime = 0 nonProjectTime = 0 leaveAndOther = 0 resourceCounter = 2 Set workbook1 = Workbooks.Open(File1.Value) […]

将滚动条添加到标签

我在userForm上有一个标签,其中的数据是列表forms。 数据比标签更长。 不扩展标签,有没有办法给它添加一个滚动条? 还是有另一种select? 基本上我想要一个没有滚动条的框,除非列表比框长,那么就有一个滚动条。 使用Excel vba userForm

用计数器selectvariables对象

背景: 我有一个使用标准化名称的用户窗体中的对象的集合(对于此示例中的Listbox对象),我想用一个计数器循环dynamic地重命名它们。 问题: 如果我所要求的甚至是可能的,我还没有想出办法,但是我想确认一下。 解决scheme: 到目前为止,就像我说的(参考上面的图片),我需要一种方法来设置for循环内的对象的值,如下所示: For CounterItems = 1 To 18 'Hours in Template ListBox_Time(CounterItems).Value="Dummy" & CounterItems Next CounterHours 但是,我怎么这样做(或者如果是可以实现的),我是无能为力的。 题: 有没有办法使用计数器来投射variables/对象?