我正在使用excel 2007。
我有一个任务列表(200-500),我需要在不同的类别/部分等(多个过滤器)进行分组。整个数据在excel表中,因此我可以应用Excel的内置表过滤器来显示我需要的确切数据。
然而,应用多个过滤器来显示预期数据总是很困难,特别是因为我需要经常这样做。为了简单起见,我打算为每条记录编号,如
a.b.c.d.e.f
Where a, b, c, d, e, f are simple numbers. List looks like:
1
1.1
1.2
1.2.1
1.2.1.1
1.2.2
1.3
& so on.
问题是,Excel将其作为单个小数的数字,但只要我添加第二个小数,excel将其视为文本,这在一般行为中是显而易见的。
但是,作为特例,我需要excel同时将其视为数字或文本。数字是可取的,因为我想对它们进行排序,这可能很难作为文本。
为了使事情变得更复杂,在表格中进行过滤时,我需要添加一些公式来过滤结果,例如1.*
应显示所有数字以1.
开头
是否可以使用excel的默认行为,没有VBA?
如果不是,是否可以使用VBA?如果是的话,任何线索都会受到赞赏。我不需要整个程序,因为我可以编写基本的VBA程序,只是想知道它是如何完成的?
答案 0 :(得分:2)
我通过添加一个帮助列来对我进行排序,该列在前面添加一个字母并对其进行排序。例如。 1变为f1,1.1变为f1.1等。然后所有都被排序为文本。
您可以使用公式="f" & A1
。
我的样本:
然后数据排序:
过滤器:
答案 1 :(得分:1)
如果我在没有VBA的情况下尝试此操作,我的第一步是在数据选项卡上使用sort to columns函数。
接下来,确保数据中的所有空格都用零填充。
然后按列
对数据进行排序
只要您将原始数据保留在与排序数据相同的行中(我没有在发布的图像中专注于该过程),您的项目现在应该是有序的。