有时需要按单元格颜色或字体颜色进行排序,但Excel 2003没有提供直接的方法。我们可以利用自定义函数或宏表函数GET.CELL,在辅助列中获取单元格颜色或字体颜色索引值,然后进行排序。具体方法如下: 方法一:用宏表函数GET.CELL 以下表为例,假设人物名单在B2:B19区域中。
1.选择C2单元格(很重要,不能随便选择别的单元格),单击菜单“插入→名称→定义”,弹出“定义名称”对话框。在“在当前工作簿中的名称”下的文本框中输入名称“字体颜色”,在“引用位置”下输入公式: =GET.CELL(24,B2) 单击“确定”按钮。 说明:由于要获取字体颜色,所以公式中GET.CELL函数的第一个参数为“24”,如果要获取单元格颜色,则将该参数改为“38”,公式改为: =GET.CELL(38,B2) 所定义的名称也可以作相应的更改,如改为“单元格颜色”。 2.在C2单元格中输入公式: =字体颜色 回车后C2单元格中将显示B2单元格中字体的颜色索引值。将C2单元格中的公式用填充柄填充到C3:C19区域中,然后选择该区域中的某个单元格,单击工具栏中的A→Z排序按钮,即可得到按字体颜色排序后的结果。 方法二:用自定义函数 以下表为例,假设人物名单在B2:B19区域中。
1.按Alt+F11,打开VBA编辑器。单击菜单“插入→模块”,Excel插入名称为“模块1”的模块。在右侧的代码窗口中输入下面的VBA代码: Function GetCellColor(TheCell As Range) 2.按Alt+F11返回Excel界面。在C2单元格中输入公式: =getcellcolor(B2) 如果需要按单元格字体颜色排序,则输入下面的公式: =getfontcolor(B2) 回车后C2单元格中将显示B2单元格中填充色的颜色索引值。将C2单元格中的公式用填充柄填充到C3:C19区域中,然后选择该区域中的某个单元格,单击工具栏中的A→Z排序按钮,即可得到按单元格颜色排序后的结果。 |