Excel userform组合框选择工作表以放入值

时间:2013-07-11 17:11:45

标签: excel vba excel-vba ms-office

您好我正在尝试在Excel中编写用户表单,用户输入信息并可以选择他们希望输入的信息的工作表转到该电子表格。

这是我到目前为止所拥有的。

Dim iRow As Long
Dim sheet As String

sheet = ComboBox1.Value
Worksheets(sheet).Activate

iRow = sheet.Cells.Find(what:="*", seatchOrder:=xlRows, searchdirection:=xlPrevious, LookIn:=xlValues).Row + 1

当我运行用户表单并在组合框中选择工作表并点击命令按钮运行表单时我得到错误“无效限定符”

它突出显示了sheet.cells

如果它有帮助,这里是整个代码:

    Private Sub ComboBox1_Change()

End Sub

Private Sub CommandButton1_Click()
'get item button

Dim sheet As String
UserForm8.Hide

MsgBox ("Select an item to update")

sheet = ComboBox1.Value
Worksheets(sheet).Activate

Set ProjRng = Application.InputBox(Message, Title, "", 377, 58, , , 8)
    ProjSel = ProjRng.Cells.Row


Label1.Enabled = True
Label2.Enabled = True
Label3.Enabled = True
Label4.Enabled = True
Label8.Enabled = True
Label10.Enabled = True
TextBox1.Enabled = True
TextBox2.Enabled = True
TextBox3.Enabled = True
TextBox4.Enabled = True
TextBox8.Enabled = True
TextBox10.Enabled = True
TextBox10.Locked = False
CommandButton1.Enabled = True
ComboBox1.Enabled = True





UserForm8.TextBox1.Value = ActiveSheet.Cells(ProjSel, 1).Value
UserForm8.TextBox2.Value = ActiveSheet.Cells(ProjSel, 2).Value
UserForm8.TextBox3.Value = ActiveSheet.Cells(ProjSel, 3).Value
UserForm8.TextBox4.Value = ActiveSheet.Cells(ProjSel, 4).Value
UserForm8.TextBox8.Value = ActiveSheet.Cells(ProjSel, 8).Value
UserForm8.TextBox11.Value = ActiveSheet.Cells(ProjSel, 6).Value
    UserForm8.Show



End Sub

Private Sub CommandButton2_Click()
'Update button to update the remaing quantity amount

Dim iRow As Long
Dim sheet As String

sheet = ComboBox1.Value
Worksheets(sheet).Activate

iRow = sheet.Cells.Find(what:="*", seatchOrder:=xlRows, searchdirection:=xlPrevious, LookIn:=xlValues).Row + 1

With Worksheets("ChemLog")
    .Cells(iRow, 6).Value = Me.TextBox12
End With


With sheet
    .Cells(iRow, 1).Value = Me.TextBox1.Value


end with    

    'continue above with columns according to log








End Sub






Private Sub TextBox10_Change()


End Sub

Private Sub TextBox11_Change()

End Sub

Private Sub UserForm_Click()

End Sub

Private Sub UserForm_Initialize()
ComboBox1.AddItem ("Standards")
ComboBox1.AddItem ("Acids,Bases, and Buffers")
ComboBox1.AddItem ("Solvents and Flammables")

End Sub

1 个答案:

答案 0 :(得分:1)

除拼写错误外,sheet是一个字符串,因此需要:

Worksheets(sheet).Cells.Find(..

这是您收到特定错误消息的原因。