1

我需要帮助。我有一个显示以下结果的组合框

A123456|员工A

然后我想取前 6 个字符并将结果放在一个单元格上,所以我制定了以下代码:

    Private Sub cmbSelectEmployee_SelectedIndexChanged(sender As Object, e As EventArgs) Handles cmbSelectEmployee.SelectedIndexChanged

    Dim employeeInfo As String = cmbSelectEmployee.Text
    Dim employeeID = Microsoft.VisualBasic.Left(employeeInfo, 6)

    Globals.calCalculationSheet.Range("B36").Value = employeeID

End Sub

工作完美,只是现在我意识到“|”左边的 6 位数字 不会总是6。有时是5,其他时候可能是10。所以现在我需要显示“|”左侧的所有字符

我使用了 Split("|"c)),但我不知道如何将左侧字符放入变量中。

4

2 回答 2

3

您可以使用String.IndexOf()查找字符串中字符的索引:

Dim employeeID = Microsoft.VisualBasic.Left(employeeInfo, employeeInfo.IndexOf("|"))

请注意,String.IndexOf()如果字符串不包含您请求的字符,它将返回 -1。如果您不确定您的字符串是否始终包含 ,|您将需要测试 . 的返回值String.IndexOf()

于 2013-07-09T03:25:21.033 回答
0

请试试这个。

Private Sub cmbSelectEmployee_SelectedIndexChanged(sender As Object, e As EventArgs) Handles cmbSelectEmployee.SelectedIndexChanged

    Dim employeeInfo As String = cmbSelectEmployee.Text
    Dim employeeID = employeeInfo.Split("|")(0)

    Globals.calCalculationSheet.Range("B36").Value = employeeID

End Sub
于 2013-07-09T03:29:50.270 回答