先来看需求
解答1: 先,=IF(D2>0,"进步",0),再筛选即可。
需求还没挖掘完,是在红框里 再解2:这样看的话,就是直接降序排列,然后再列转行,再合并在一个单元格里就行。具体的操作看动态图解:
按图中进行转置后,还得再用公式合并起来,达到他要的效果。 =B18&"、"&C18&"、"&D18&"、"&E18&"、"&F18&"、"&G18&"、"&H18 问题是解决了,可是还有点复杂,就是向人家说的,数据多了,更麻烦,光转换公式链接符号就整不过来。 好了,这个解法是直接先按照降序排序,确定大于0的的区域,比如上图在D2:D8之间,写程序如下:Dim data As Range Dim outputRow As Long Dim cell As Range Dim outputValue As String Set data = Range("B2:B8") outputRow = Cells(Rows.Count, "B").End(xlUp).Row + 1 Set output = Cells(outputRow, "B") outputValue = "" For Each cell In data If outputValue <> "" Then outputValue = outputValue & "、" & cell.Value Else outputValue = cell.Value End If Next cell output.Value = outputValue 此代码只需要每次修改区域范围即可转换为想要的结果,想要的结果在B列的最下面的非空单元格内。
|