Foxtable(狐表)用户栏目专家坐堂 → 请教:如何根据列名称或列内容自动获得最大列宽?


  共有14556人关注过本帖树形打印复制链接

主题:请教:如何根据列名称或列内容自动获得最大列宽?

帅哥哟,离线,有人找我吗?
mr725
  11楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信 一级勋章
等级:MVP荣誉狐 帖子:5154 积分:31434 威望:0 精华:8 注册:2008/9/8 12:27:00
  发帖心情 Post By:2010/3/15 17:29:00 [只看该作者]

如果是备注型的列,就s1输入内容多的话,就惨了。呵呵~  

 回到顶部
帅哥哟,离线,有人找我吗?
mr725
  12楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信 一级勋章
等级:MVP荣誉狐 帖子:5154 积分:31434 威望:0 精华:8 注册:2008/9/8 12:27:00
  发帖心情 Post By:2010/3/15 17:36:00 [只看该作者]

网络问题,重复了~ 

[此贴子已经被作者于2010-3-15 17:36:37编辑过]

 回到顶部
帅哥哟,离线,有人找我吗?
程兴刚
  13楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信 一级勋章
等级:超级版主 帖子:7235 积分:40550 威望:0 精华:16 注册:2008/8/31 23:23:00
  发帖心情 Post By:2010/3/15 22:04:00 [只看该作者]

以下是引用czy在2010-3-15 17:29:00的发言:
要不用模拟按键试试系统的最佳列宽


可能就得这样,其他方法可能都不精准,还涉及到半角字符与全角字符,仅靠长度来解决不太准确!

[此贴子已经被作者于2010-3-15 22:38:00编辑过]

 回到顶部
帅哥哟,离线,有人找我吗?
mr725
  14楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信 一级勋章
等级:MVP荣誉狐 帖子:5154 积分:31434 威望:0 精华:8 注册:2008/9/8 12:27:00
  发帖心情 Post By:2010/3/16 20:17:00 [只看该作者]

以下是引用czy在2010-3-15 17:29:00的发言:
要不用模拟按键试试系统的最佳列宽

这个怎么搞呢~ 

 回到顶部
帅哥哟,离线,有人找我吗?
czy
  15楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信 一级勋章 三级勋章 二级勋章
等级:超级版主 帖子:6318 积分:33945 威望:0 精华:10 注册:2008/8/31 20:56:00
  发帖心情 Post By:2010/3/17 12:03:00 [只看该作者]

With CurrentTable
    .Select(0,0,0,.Cols.Count-1)
End With
Sendkeys.Send("{Tab 3}~")
RibbonTabs("Common").Groups("Data").Items("Other").Items("SetColumnWidth").PerformClick()

 回到顶部
帅哥哟,离线,有人找我吗?
mr725
  16楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信 一级勋章
等级:MVP荣誉狐 帖子:5154 积分:31434 威望:0 精华:8 注册:2008/9/8 12:27:00
  发帖心情 Post By:2010/3/17 12:44:00 [只看该作者]

这个最好,谢谢C版···     学啊~ 

 回到顶部
美女呀,离线,留言给我吧!
yangming
  17楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信 一级勋章
等级:超级版主 帖子:4109 积分:23338 威望:0 精华:21 注册:2008/9/1 20:07:00
  发帖心情 Post By:2010/3/17 12:46:00 [只看该作者]

以下是引用czy在2010-3-17 12:03:00的发言:
With CurrentTable
    .Select(0,0,0,.Cols.Count-1)
End With
Sendkeys.Send("{Tab 3}~")
RibbonTabs("Common").Groups("Data").Items("Other").Items("SetColumnWidth").PerformClick()

先收藏再研究,呵呵


 回到顶部
帅哥哟,离线,有人找我吗?
mr725
  18楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信 一级勋章
等级:MVP荣誉狐 帖子:5154 积分:31434 威望:0 精华:8 注册:2008/9/8 12:27:00
  发帖心情 Post By:2010/3/17 22:08:00 [只看该作者]

以下是引用czy在2010-3-17 12:03:00的发言:
With CurrentTable
    .Select(0,0,0,.Cols.Count-1)
End With
Sendkeys.Send("{Tab 3}~")
RibbonTabs("Common").Groups("Data").Items("Other").Items("SetColumnWidth").PerformClick()

测试了一下,代码虽然简单,但是速度有些不足: 40列,11000行数据表要10秒钟时间~ (中等偏下配置的电脑)

不如自己用lxl版主的代码求得字节数遍历列来的速度快呀(1秒半不到)~  (但从字节数换算成列宽时,要随不同字体和字体的大小不同来确定一个系数,得出合适的列宽来,否则很难做到『最佳列宽』,琢磨中·····)

需要狐爸来提速啦~~~~~


 回到顶部
帅哥哟,离线,有人找我吗?
程兴刚
  19楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信 一级勋章
等级:超级版主 帖子:7235 积分:40550 威望:0 精华:16 注册:2008/8/31 23:23:00
  发帖心情 Post By:2010/3/17 22:42:00 [只看该作者]

这个与提速无关,本不当此用,CZY版主也仅仅是举一个例子!

 回到顶部
帅哥哟,离线,有人找我吗?
mr725
  20楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信 一级勋章
等级:MVP荣誉狐 帖子:5154 积分:31434 威望:0 精华:8 注册:2008/9/8 12:27:00
  发帖心情 Post By:2010/3/17 22:56:00 [只看该作者]

以下是引用程兴刚在2010-3-17 22:42:00的发言:
这个与提速无关,本不当此用,CZY版主也仅仅是举一个例子!

呵呵,不是这样的,C版的代码没问题,只是狐表不能一次调整(双击)选择的多列的【最佳列宽】,而要一列一列的来调整(手工操作一试变知了),所以速度自然就慢下来了。(Excel可以一次调整多列的『最佳列宽』)

好像觉得似忽原来的版本可以一次(双击)调整多列的最佳列宽的。图片点击可在新窗口打开查看   (记错了,那是拖动时一次可以调整多列的宽度)

[此贴子已经被作者于2010-3-17 23:19:11编辑过]

 回到顶部
总数 20 上一页 1 2