我有一个带有一堆文本框的用户表单。最终用户将测试数据输入到表单中,单击“提交”按钮后,此信息将保存到excel工作表中。我想知道如何使用户可以从他们的计算机输入图像到表单中。
要求:最终用户能够从他们的计算机上选择一个图像,然后单击表单上的提交,将其插入到excel工作表中。
Private Sub CommandButton3_Click()
Dim image As FileDialog
Set image = Application.FileDialog(msoFileDialogFilePicker)
Dim vrtSelectedPicture As Va
我是VBA的新手,我有一个Excel工作表,其中运行着一些宏。在其中一个选项卡中,用户可以输入数据,然后按下工作表上的命令按钮即可获得答案。现在我想通过用户表单输入数据。我已经成功地创建了一个用户表单,它可以完美地从Excel工作表中读取/写入数据。我现在面临的问题是,只要我在用户表单中输入数据,命令按钮(连接到宏)就会给我“被零分割”的错误,它有点破坏了Excel文件,我需要用我拥有的备份文件来替换它!我不明白为什么通过用户表单输入数据会导致这个问题。 当我在Excel工作表上输入数据(而不是通过用户表单)时,一切都很好!这是我得到错误的部分: Function ATn2(x As Var
我正在使用Excel VBA。我有两个用户表单: ClientInfo和ClientSearch
在ClientSearch中,我搜索excel工作表以列出所有具有相同姓氏的客户。从那里,我选择我想要的客户机(通过突出显示列表中的名称并单击命令按钮cmdOpenClientInfo),并确定它们的ClientID (也在工作表中)。然后,我想将此ClientID传递给表单ClientInfo,以便使用工作表中的相关数据填充此表单上的所有文本框:
以ClientSearch形式编码:
Private Sub cmdOpenClientInfo_Click()
Dim ClientID As
我有一个excel表单,我与VBA一起创建的。在表单中,我有一个文本框,用户要在该文本框中键入日期。
我创建了这个VBA子句,以确保用户类型在支持xx/xx/xxxx.格式的日期中。
If Not IsDate(textboxDate1.Text) Then
Call MsgBox("Please select a correct Date format", vbOKOnly)
Exit Sub
End If
但是,使用此VBA代码,不管用户是否需要输入日期,用户都必须输入日期。因此,当我有另外4个文本框在我的表单中输入日期时,用户只需要输入1个日期,而不是5个,我就会
想问一下这里的专家,为什么下面的代码在excel表格中不起作用?基本上,此代码将对用户输入到BDTextBox中的输入执行验证,如果格式无效,它将弹出一条警告消息。我已经在excel表格表单中测试了这段代码,它工作得很好,但是如果将文本框从表单更改为嵌入到excel表格中,它就不起作用了。有什么想法吗?
Private Sub BDTextBox_Exit(ByVal Cancel As MSForms.ReturnBoolean)
If BDTextBox.Text <> "" Then
If IsDate(BDTextBox.Text) Then
我有一个用户表单,它将一行信息填充到excel表中。excel表格有两个电子表格,一个用于数据输入,另一个用于用户表单中的3个液滴。我想删除第二个工作表,并将其放入自己的工作簿中。我在这里的问题是,如何编写VBA代码,从液滴工作簿(称为"Client和ProjectDroplists.xlsx“)中选择数据,以填充第一个工作簿(称为”费用报告Test.xlsm")中的用户表单中的液滴?我的当前代码附在下面。
Private Sub cboClient_Change()
Me.cboProject = ""
Select Case Me.cboClient
Ca
我是VBA新手。我只是设法创建了我的表单并填充了excel。我想知道是否有一种方法来创建一个新的按钮,将拉信息,如果它找到唯一的ID。
例如:
Unique ID Name Place
1 John Doe X
2 Jane Doe Y
3 Tim Doe Z
例如,在表单中,在"Add“(它获取工作表中的数据)旁边,我想让"Search for:”在这里输入唯一的ID,并让所有其他单元格填充信息。
如果我应该提供更多的信息,我很抱歉。我是VBA新手。如果需要,我可以copy+paste代码。
如果我添加
背景:我的团队希望使用共享Excel工作簿来跟踪用于TFS工作项的时间。我们认为使用VBA可以很容易地做到这一点,但我们对VBA还不熟悉,也无法找到工作内容的组合。
在链接到TFS之后,我们有一个表,它可能如下所示:
ID |Title | Description | Category | State | Completed Work
===========================================================================
140 Test 1 VBA is fun Testing Progra
我正在创建一个表单,将数据输入到我的excel工作表中。我一直遇到的问题是,输入的信息是一个数字,但是当运行表单“保存”按钮的VBA代码时,我输入的数据将以文本形式放入Excel表中。这导致行尾的公式没有注册数据(一个简单的=sum(...)公式)。我尝试了几个不同的选项,并搜索了一个解决方案,但所有接近的答案都是为了从外部源导入数据。
这是将从窗体接收数据的单个单元格的代码。会有更多,但我认为这将提供足够的信息。代码中几乎没有其他内容,只有range("").select更改,然后在每个新的选择中从不同的文本框中提取数据。
Private Sub butSaveData_Cl
我正在尝试创建一个小的用户表单呼叫日志。用户获取详细信息,单击按钮时,指定的excel工作表将填充文本框。我对VBA比较陌生,似乎不能用指定的文本框(例如,column A= tb1.text,column b= tb2.text)填充当前行(应该为空)上的列,我可以让“查找空行”正常工作。我已经删除了正确填充列的失败尝试,但需要保留与在Visual Studio中编写的格式相同的格式。
Private Sub Button1_Click_1(sender As Object, e As EventArgs) Handles btn_submit.Click
On Error
我在多个用户表单上有多个用于时间分配的文本框。为了简单起见,我们使用userform1和userform2,每个都有textbox1和textbox2。Userform1用于用户输入,它将值放入表中,而userform2从该表中提取值并显示在相关的文本框中。我需要限制这些框的输入和显示为H:mm格式,其中分钟不能超过59,但小时可以是25+,即125:59,但不能是4:67 我尝试了来自这两个线程以及其他线程的代码组合,但似乎无法使其工作。 Excel VBA Textbox time validation to [h]:mm Time format of text box in excel
我正在构建一个包含用户输入数据的用户表单,然后将其传输到另一个标题为“Tracker”的工作表中。作为表单的一部分,我使用文本框中的当前日期标记所有条目,但只有在运行表单、单击文本框并尝试键入某些内容后,它才会出现。这是我的代码,希望能更清楚地传达我的项目。
Private Sub CommandButton3_Click()
Dim LastRow As Long, ws As Worksheet
Set ws = Sheets("Tracker")
Sheets("Tracker").Select
LastRow = ws.r
我有一个在visual studio 2013中创建的表单,它将数据从表单填充到excel工作表。当用户在表单中输入数据时,工作表将被打开。我想要的是,当用户在表单中输入数据并将其填充到excel工作表时,文件应该被刷新,以便每个人都能看到。该文件处于共享模式。
我试过了
xlworkbook.refreshall() 'xlworkbook is my excel workbook
但它会抛出一个错误:
System.Runtime.InteropServices.COMException类型的未处理异常发生在Quote.exe中
其他信息:HRESULT异常: 0x800A03E
我是VBA的新手,但在社区的帮助下,我正在为我的工作安排一个很好的电子表格。所以,首先,我要感谢大家!
我有一个用户表单,它有多个组合框和文本框来填充另一个工作表。其中一个文本框用于插入日期,也就是说,为了防止输入错误,我使用了以下代码:
If IsDate(boxDate.Value) = False Then
MsgBox "Enter valid date"
Exit Sub
End If
随着代码的继续,文本框将填充这一行代码上的单元格:
.Cells(iRow, 5) = CDate(boxDate.Value)
问题是,如果我在文本框上输入一个数字,
我有一些我在VBA中使用的代码,我正在通过VBA表单将数据输入到excel工作表中,该表单将同时垂直和水平地填充excel工作表,但每次我输入一个字母时,它都会跳到下一列和下一行,而不是在表单中提交之前完整输入单词。我该如何解决这个问题呢?
Private Sub txtLocation_Change()
Dim ws As Worksheet
Set ws = Worksheets("Location")
Dim newRow As Long
newRow = Application.WorksheetFunction.CountA(ws.Range("
因此,我编写了几个带有几个用户输入(文本框、复选框等)的用户表单。现在我如何在excel之外使用它们呢?
目前,我必须:
Open up the spreadsheet
Enable macros
Go to Developer Tab, View Code
Then find the right userform and run it or type F5.
有没有一种更友好的方式来运行用户表单?它是为不懂vba或excel编程的测试人员准备的。
谢谢!