繁体   English   中英

使用用户窗体上文本框中的值更新范围和列表框中的值

[英]Update value in range and ListBox with the value in a TextBox on UserForm

我希望有人能帮我解决这个问题。 我正在设计一个用户表单,它将使用工作表中某个范围内的值填充一个列表框。 目标是用列表框行(我工作正常)填充一行文本框,然后使用文本框更改范围和列表框中的值。 最后一步是我遇到麻烦的地方。 有谁知道实现这一目标的方法? 下面是我用来填充文本框的代码。 有什么方法可以反转它以将文本框值写入范围/列表框吗? 还附上了用户表单的图像,就像现在一样。 谢谢!

Private Sub ProgList_Click()
StepTxt.Value = Application.VLookup(Me.ProgList, Sheets(EditProjNumInput _
.ProjNumTxt.Value).Range("B15:F24"), 1, False)
DateCompTxt.Value = Application.VLookup(Me.ProgList, Sheets(EditProjNumInput _
.ProjNumTxt.Value).Range("B15:F24"), 2, False)
CompByTxt.Value = Application.VLookup(Me.ProgList, Sheets(EditProjNumInput _
.ProjNumTxt.Value).Range("B15:F24"), 3, False)
CheckByTxt.Value = Application.VLookup(Me.ProgList, Sheets(EditProjNumInput _
.ProjNumTxt.Value).Range("B15:F24"), 4, False)
CommTxt.Value = Application.VLookup(Me.ProgList, Sheets(EditProjNumInput _
.ProjNumTxt.Value).Range("B15:F24"), 5, False)
Me.DateCompTxt.Text = Format(Me.DateCompTxt.Text, "mm/dd/yyyy")
End Sub

在此处输入图像描述

可以通过Match function 找到要使用命令按钮单击编辑的行的索引。因此,编辑文本框中的文本后,单击命令按钮将根据文本框更改给定范围内的文本,并使用行源属性更新列表框. 尝试这个...

Private Sub CommandButton1_Click()
Dim rw As Long

rw = Application.Match(Me.ProgList, Sheets(EditProjNumInput.ProjNumTxt.Value).Range("B15:B24"), 0)
Sheets(EditProjNumInput.ProjNumTxt.Value).Range("B15:B24").Cells(rw, 1) = StepTxt.Value
Sheets(EditProjNumInput.ProjNumTxt.Value).Range("B15:B24").Cells(rw, 2) = DateCompTxt.Value
Sheets(EditProjNumInput.ProjNumTxt.Value).Range("B15:B24").Cells(rw, 3) = CompByTxt.Value
Sheets(EditProjNumInput.ProjNumTxt.Value).Range("B15:B24").Cells(rw, 4) = CheckByTxt.Value
Sheets(EditProjNumInput.ProjNumTxt.Value).Range("B15:B24").Cells(rw, 5) = CommTxt.Value
ProgList.RowSource = EditProjNumInput.ProjNumTxt.Value & "!B15:F24"

End Sub

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM