excel宏-只需在给定字符串后提取信息
我正在寻找一种解决方案,从电子表格的单元格中提取一些信息,并将其转储到相邻的列中。每个单元格都包含大量垃圾,但总是以模式“WX=”结尾,后面是我想提取的信息。我想要的信息长度通常在7-10个字母数字字符之间。是否有任何功能已经可以做到这一点,或者我需要一个完全独特的脚本来实现这一点excel宏-只需在给定字符串后提取信息,excel,data-extraction,vba,Excel,Data Extraction,Vba,我正在寻找一种解决方案,从电子表格的单元格中提取一些信息,并将其转储到相邻的列中。每个单元格都包含大量垃圾,但总是以模式“WX=”结尾,后面是我想提取的信息。我想要的信息长度通常在7-10个字母数字字符之间。是否有任何功能已经可以做到这一点,或者我需要一个完全独特的脚本来实现这一点 谢谢你的帮助 下面的函数将返回“WX=”from cellA1之后的字符串: =RIGHT(A1, LEN(A1) - (FIND("WX=", A1) + 2)) 下面的函数将返回“WX=”from cellA1
谢谢你的帮助 下面的函数将返回“WX=”from cell
A1
之后的字符串:
=RIGHT(A1, LEN(A1) - (FIND("WX=", A1) + 2))
下面的函数将返回“WX=”from cell
A1
之后的字符串:
=RIGHT(A1, LEN(A1) - (FIND("WX=", A1) + 2))
下面的函数将返回“WX=”from cell
A1
之后的字符串:
=RIGHT(A1, LEN(A1) - (FIND("WX=", A1) + 2))
下面的函数将返回“WX=”from cell
A1
之后的字符串:
=RIGHT(A1, LEN(A1) - (FIND("WX=", A1) + 2))
如果在VBA中执行此操作,则可以使用VBA
Mid
功能:
Mid(Range("A1"), 4)
语法是:
Mid(text, start_character, number_of_characters)
这将返回中间的字符数
,除非省略该参数,在这种情况下,它将从指定的起始字符
位置返回字符串的其余部分
因此,如果单元格A1
包含类似wx=kladlkjad的字符串;kjadsfkjasfd
然后:
Mid(Range("A1"), 4, 4)
将返回:klad
,而
Mid(Range("A1"), 4)
将返回kladlkjad;kjadsfkjasfd
如果将
Mid
函数作为工作表函数执行,则其工作方式不同,在这种情况下,字符数
不是一个可选参数,您必须使用Soren所示的右
功能和Len
功能。如果在VBA中执行此操作,您可以使用VBAMid
功能:
Mid(Range("A1"), 4)
语法是:
Mid(text, start_character, number_of_characters)
这将返回中间的字符数
,除非省略该参数,在这种情况下,它将从指定的起始字符
位置返回字符串的其余部分
因此,如果单元格A1
包含类似wx=kladlkjad的字符串;kjadsfkjasfd
然后:
Mid(Range("A1"), 4, 4)
将返回:klad
,而
Mid(Range("A1"), 4)
将返回kladlkjad;kjadsfkjasfd
如果将
Mid
函数作为工作表函数执行,则其工作方式不同,在这种情况下,字符数
不是一个可选参数,您必须使用Soren所示的右
功能和Len
功能。如果在VBA中执行此操作,您可以使用VBAMid
功能:
Mid(Range("A1"), 4)
语法是:
Mid(text, start_character, number_of_characters)
这将返回中间的字符数
,除非省略该参数,在这种情况下,它将从指定的起始字符
位置返回字符串的其余部分
因此,如果单元格A1
包含类似wx=kladlkjad的字符串;kjadsfkjasfd
然后:
Mid(Range("A1"), 4, 4)
将返回:klad
,而
Mid(Range("A1"), 4)
将返回kladlkjad;kjadsfkjasfd
如果将
Mid
函数作为工作表函数执行,则其工作方式不同,在这种情况下,字符数
不是一个可选参数,您必须使用Soren所示的右
功能和Len
功能。如果在VBA中执行此操作,您可以使用VBAMid
功能:
Mid(Range("A1"), 4)
语法是:
Mid(text, start_character, number_of_characters)
这将返回中间的字符数
,除非省略该参数,在这种情况下,它将从指定的起始字符
位置返回字符串的其余部分
因此,如果单元格A1
包含类似wx=kladlkjad的字符串;kjadsfkjasfd
然后:
Mid(Range("A1"), 4, 4)
将返回:klad
,而
Mid(Range("A1"), 4)
将返回kladlkjad;kjadsfkjasfd
如果您将
Mid
功能作为工作表功能使用,则其工作方式不同,在这种情况下,字符数不是一个可选参数,您必须使用Right
功能和Len
功能,如Soren所示。非常感谢!我无法将此应用于整个列。这是因为只有部分单元格包含字符串吗?我用A:A替换了所有A1,但没有得到预期的结果。如您所见,我是一个初学者……如果您已经在单元格B1
中编写了上述代码,那么您应该沿着列a
中的内容向下拖动函数。这样,单元格B2
中的值将从单元格A2
中找到字符串,B3
将在A3
中找到字符串,依此类推。多么尴尬啊。我已经失业好几个月了,甚至忘记了这么简单的事情!再次感谢!没问题。如果答案对您有效,请接受…:)谢谢!我无法将此应用于整个列。这是因为只有部分单元格包含字符串吗?我用A:A替换了所有A1,但没有得到预期的结果。如您所见,我是一个初学者……如果您已经在单元格B1
中编写了上述代码,那么您应该沿着列a
中的内容向下拖动函数。这样,单元格B2
中的值将从单元格A2
中找到字符串,B3
将在A3
中找到字符串,依此类推。多么尴尬啊。我已经失业好几个月了,甚至忘记了这么简单的事情!再次感谢!没问题。如果答案对您有效,请接受…:)谢谢!我无法将此应用于整个列。这是因为只有部分单元格包含字符串吗?我用A:A替换了所有A1,但没有得到预期的结果。正如你所看到的,我是一个初学者……如果你已经在上面的代码中写了,比如说,cellB1
t