删除列中某些字符的脚本或宏

时间:2015-08-24 22:00:37

标签: excel-vba vba excel

我需要编写(或查找)一个脚本,该脚本在运行时删除列中的所有内容,但两个引号之间的内容除外。看起来应该是这样的:

之前:DEFAULT "443562765560"

之后:443562765560

所以基本上它删除了引号之前和之前的所有内容,只是留下了内部的内容。

有人能指出我正确的方向吗?

1 个答案:

答案 0 :(得分:0)

您可以使用分割功能:

select d.day, t.type, (case when mt.type is null then 0 else 1 end)
from (select distinct day from my_table) d cross join
     (select distinct type from my_table) t left join
     my_table my
     on mt.day = d.day and mt.type = d.type;

这将返回一个基于零的数组:MyArray(0)是第一个Delim左边的所有内容,MyArray(1)是第一个和第二个Delim之间的所有内容,等等。当Delim是双引号时,它有点棘手 - - 我喜欢使用Delim = Chr(34)。

要提取前两个双引号之间的所有内容,您可以执行以下操作:

MyArray = Split(TextToSplit, Delim)

其中c是一个单元格。最后的(1)从Split返回的基于0的数组中提取元素1。

希望有所帮助。