找回密码
 立即注册

QQ登录

只需一步,快速开始

leikaihua

注册会员

25

主题

78

帖子

193

积分

注册会员

积分
193

活字格认证

[已处理] 排序

leikaihua
注册会员   /  发表于:2014-12-1 11:58  /   查看:7222  /  回复:8
使用  Sort 排序的时候。依照行进行排序。

虽然行单元格的数据正确排序,但是其行的行高并没有随之排序,请问有解决办法吗?

8 个回复

倒序浏览
leikaihua
注册会员   /  发表于:2014-12-1 19:16:00
沙发
还有 行进行排序的时候  对应的表头 并没有随之移动,如何解决?
回复 使用道具 举报
iceman
社区贡献组   /  发表于:2014-12-1 19:41:00
板凳
回复 1楼leikaihua的帖子

1# 问题,只是对 Spread 底层数据模型进行排序,无法使格式随机调整。

可以尝试把行高放置在排序单元格的 tag 中,在排序完成后取 tag值重新设置,Tag使用参考代码:

  1. Private Sub Command1_Click()
  2.    fpSpread1.SortKey(1) = 1
  3.    
  4.     fpSpread1.SortKeyOrder(1) = SortKeyOrderDescending
  5.     fpSpread1.Sort -1, -1, -1, -1, SortByRow
  6.    
  7.     fpSpread1.Col = 1
  8.     fpSpread1.Row = 2
  9.     Dim a As String
  10.     a = fpSpread1.CellTag
  11.    
  12.    
  13.    
  14. End Sub

  15. Private Sub Form_Load()
  16. fpSpread1.Col = 1
  17. fpSpread1.Row = 1
  18. fpSpread1.Value = 1
  19. fpSpread1.CellTag = "1"
  20. fpSpread1.TextTip = TextTipFixed
  21. fpSpread1.Row = 2
  22. fpSpread1.Value = 2
  23. End Sub
复制代码

评分

参与人数 1满意度 +5 收起 理由
leikaihua + 5 多谢版主

查看全部评分

回复 使用道具 举报
leikaihua
注册会员   /  发表于:2014-12-2 10:21:00
地板
回复 3楼iceman的帖子

那与 行同一行的表头 并没有随之移动 有啥办法?
回复 使用道具 举报
iceman
社区贡献组   /  发表于:2014-12-2 17:46:00
5#
回复 4楼leikaihua的帖子

使用同样方法应该也可以实现,我理解取行高的代码变成取行头就可以了。
回复 使用道具 举报
leikaihua
注册会员   /  发表于:2014-12-2 19:55:00
6#
回复 5楼iceman的帖子

排序时,如果有隐藏行  SPREAD  是如何处理的,尝试了多半天实在摸不着头脑。

比如我把第3行已经隐藏,排序时,spread 还会再隐藏一行。。。。。。。。      

1、spread排序时如何处理隐藏行?如果仅仅只是数据模型排序,为啥还会自动隐藏一行?
2、如何让spread排序时忽略掉隐藏行?
回复 使用道具 举报
iceman
社区贡献组   /  发表于:2014-12-3 16:27:00
7#
回复 6楼leikaihua的帖子

你好,

正如之前我们讨论的,Spread 排序是根据底层数据模型来排序的,通过隐藏和显示控制某一行的可见性是 UI 层操作,对底层数据没有影响。

回到正题,针对当前的需求,可以针对隐藏行维护一个列表,记录其原始和排序后的位置,使用 Me.fpSpread1.MoveRowRange 方法进行移动。请你先尝试下。

谢谢
回复 使用道具 举报
leikaihua
注册会员   /  发表于:2014-12-4 11:53:00
8#
回复 7楼iceman的帖子

多谢版主再次热心的回复。

问个题外话,   移动行数据;复制行数据;交换行数据;这三个命令哪个执行速度最快?
回复 使用道具 举报
iceman
社区贡献组   /  发表于:2014-12-4 19:16:00
9#
回复 8楼leikaihua的帖子

不客气,应该做的。

复制行数据应该是效率最快的。
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 立即注册
返回顶部