0

更新 - 我有如下所示的表格。表单可以填充组合框中的列表。它还可以找到附加到适当用户名的注释。但是,我需要它来更新我正在努力的同一个单元格。我尝试使用 Siddharth Rout 的(见评论).find 代码,但并不真正理解它或如何使其适用于我的工作表。

在此处输入图像描述

为了填充列表,我使用了以下

Private Sub UserForm_Activate()
    With Worksheets("Notes")
        ComboBox1.List = .Range("A1:A" & .Range("A" & .Rows.Count).End(xlUp).Row).Value
    End With
End Sub

自从发布此内容后,我设法使用 vba 中的 vlookup 功能找到附加到用户名的注释。使用下面的代码。

    Sub CallNotes()

the_value = ComboBox1.Text

If TextBox2 = "" Then
TextBox2 = "No Notes Applied."
Else
TextBox2 = Application.WorksheetFunction.VLookup(the_value, Worksheets("Notes").Range("A:B"), 2, False)
End If
End Sub

我现在面临的主要问题是更新笔记。单击评论按钮后,我需要代码来查找用户名,然后将文本框的内容粘贴到用户名旁边的单元格中。

我用 vlookup 尝试过,但最终失败了。从那以后我删除了代码并且不记得我是如何尝试这样做并且无法取回它。本质上,我试图扭转整个 vlookup 过程。

非常感谢所有评论和建议。

4

1 回答 1

1
Dim The_value
Dim The_note
Dim c As Range
The_value = Me.ComboBox1.Text
The_note = Me.TextBox2.Text
Set c = Worksheets("Notes").Range("A:A") _
    .Find(What:=The_value, LookAt:=xlWhole)
c.Offset(ColumnOffset:=1).Value = The_note

此代码由 MSDN 上的 Hans Vogelaar MVP 提供, 请参见此处

仍然感谢 Siddharth Rout 的帮助

于 2013-10-14T11:20:18.060 回答