作业帮 > 综合 > 作业

EXECL同一颜色排序问题

来源:学生作业帮 编辑:作业帮 分类:综合作业 时间:2024/05/23 15:33:26
EXECL同一颜色排序问题
假如A1到A10都是红色,我选择的顺序是A10,A7,A3等,如何按我选择的顺序排列,
如何用VBA实现,
用VBA做,思路是标记好红色后与A列前一个单元个比,如果该单元格也是红色则终止运算,否则交换前后两行.如此循环直至前一单元格是红色,或已换到第一行.
再问: 用VBA如何来实现,,谢谢。
再答: 假定A列是选择列,B列是一个空列,如下VBA程序可在B列记录你用鼠标在A列的选择次序:
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
If Target.Column = 1 Then
  If Range("B1").Value = "" Then
    Range("B65536").End(xlUp).Value = Target.Address
  Else
    Range("B65536").End(xlUp).Offset(1, 0).Value = Target.Address
  End If
End If
End Sub
再问: 你好,谢谢你的回答,不过能不能将显示的数据在SHEET2里面显示呢,
再答: Target.Address改成Target.Value就显示数据了
再问: 嗯,只是我其中用了自动筛选,所以数值还是内容到了筛选的位置就不动了,所以想换在SHEET2里面显示,看能不能实现,,谢谢。
再答: Private Sub Worksheet_SelectionChange(ByVal Target As Range) If Target.Column = 1 Then If Sheet2.Range("B1").Value = "" Then Sheet2.Range("B65536").End(xlUp).Value = Target.Value Else Sheet2.Range("B65536").End(xlUp).Offset(1, 0).Value = Target.Value End If End If End Sub