【问题标题】:Search field in Excel with delimited textExcel 中带有分隔文本的搜索字段
【发布时间】:2018-03-21 14:02:56
【问题描述】:

我有这样格式的数据(DELIMITED TEXT)

我如何Vlookup"F88"获取1动态值。

非常感谢

【问题讨论】:

  • 您在一个单元格中有“DELIMITED TEXT”。就像字面意思一样,您在一个单元格中有'F88','66','149','','','53','13','45','11','92','43','','','' ?你想在那个分隔的文本中查找一些东西吗?这完全不清楚您的电子表格是什么样的以及您要做什么。
  • @JNevill 是的,先生,
  • 为什么输入F86会返回值66?为什么不149?这里的逻辑是什么。如果我输入45,我会得到11吗?
  • @JNevill 我确实用图片更新了我的问题,如果有帮助的话。

标签: excel text vlookup delimited


【解决方案1】:

利用您在 A1 中发布的数据,试试这个:

Sub DataGrsbber()
    Dim s As String
    s = Replace([A1], "'", "")
    ary = Split(s, ",")
    For i = LBound(ary) To UBound(ary) - 1
        If ary(i) = "F88" Then
            MsgBox ary(i + 1)
            Exit Sub
        End If
    Next i
End Sub

编辑#1:

要将值检索到单元格中,请尝试以下用户定义函数:

Public Function Retriever(BigString As String, LittleString As String) As String
    Dim s As String
    s = Replace(BigString, "'", "")
    ary = Split(s, ",")
    For i = LBound(ary) To UBound(ary) - 1
        If ary(i) = LittleString Then
            Retriever = ary(i + 1)
            Exit Function
        End If
    Next i
    Retriever = ""
End Function

【讨论】:

  • 这很有帮助,但是@Gary 我如何获取动态值,而不是 msgbox 将其粘贴到单元格上。我是 VBA 的新手,谢谢。
  • @Sadsamosa 查看我的EDIT#1
  • 谢谢,这对我帮助很大
  • 嗨,@Gary 我如何取整列。用于分隔文本。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2012-01-30
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多