Foxtable(狐表)用户栏目专家坐堂 → 在SQLGroupTableBuilder等专业统计工具中统计出的列如何自动设置最佳列宽?


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

主题:在SQLGroupTableBuilder等专业统计工具中统计出的列如何自动设置最佳列宽?

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


加好友 发短信
等级:三尾狐 帖子:759 积分:7038 威望:0 精华:1 注册:2008/9/2 20:04:00
在SQLGroupTableBuilder等专业统计工具中统计出的列如何自动设置最佳列宽?  发帖心情 Post By:2010/8/23 15:35:00 [只看该作者]

如题。上图列出今天8月份的统计表,下个月再统计就出现9月份的统计表,统计表的列名总是变动的,用代码一个个实现不方便,最好在统计中增加自动设置最佳列宽的参数。


图片点击可在新窗口打开查看此主题相关图片如下:未命名.jpg
图片点击可在新窗口打开查看

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


加好友 发短信
等级:幼狐 帖子:119 积分:1495 威望:0 精华:0 注册:2008/12/10 10:45:00
  发帖心情 Post By:2010/8/23 16:10:00 [只看该作者]

关注中...............

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


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

系统菜单内置了一个最佳列宽,Sendkeys试试。

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


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

大概应该这样吧。

 

Tables("统计表1").Select(0,0,0,Tables("统计表1").Cols.Count-1)
Sendkeys.Send("{Tab 3}~")
Syscmd.Column.Width()
Tables("统计表1").Select(0,0)


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


加好友 发短信
等级:管理员 帖子:47497 积分:251403 威望:0 精华:91 注册:2008/6/17 17:14:00
  发帖心情 Post By:2010/8/23 17:03:00 [只看该作者]

可以这样设置,不用考虑表名、列名,通用:

 

 

For Each c As Col in Tables("xxx").Cols

     if c.DataCol.IsNumeric Then

        c.Width - 100

     End If

Next


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


加好友 发短信
等级:三尾狐 帖子:759 积分:7038 威望:0 精华:1 注册:2008/9/2 20:04:00
  发帖心情 Post By:2010/8/23 17:10:00 [只看该作者]

Sendkeys.Send("{Tab 3}~") 是什么意思?  "{Tab 3}~"帮助里没有哦

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


加好友 发短信
等级:幼狐 帖子:119 积分:1495 威望:0 精华:0 注册:2008/12/10 10:45:00
[求助] 公司的EXCEL要多人使用,同时保存共享容易闪退,请问买狐表可以解决么  发帖心情 Post By:2010/8/23 17:46:00 [只看该作者]

收藏


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


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

以下是引用狐狸爸爸在2010-8-23 17:03:00的发言:

可以这样设置,不用考虑表名、列名,通用:

 

 

For Each c As Col in Tables("xxx").Cols

     if c.DataCol.IsNumeric Then

        c.Width - 100

     End If

Next

 

老六少打了个=

不过这样是返回默认列宽。


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


加好友 发短信 F6
等级:狐精 帖子:3036 积分:19229 威望:0 精华:2 注册:2008/9/1 7:50:00
  发帖心情 Post By:2010/8/24 9:47:00 [只看该作者]

 

Tables("统计表1").Select(0,0,0,Tables("统计表1").Cols.Count-1)
Sendkeys.Send("{Tab 3}~")
Syscmd.Column.Width()
Tables("统计表1").Select(0,0)

 

对窗口表好像起不了作用,老六的代码确实是返回默认列宽
[此贴子已经被作者于2010-8-24 9:47:15编辑过]

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


加好友 发短信
等级:管理员 帖子:47497 积分:251403 威望:0 精华:91 注册:2008/6/17 17:14:00
  发帖心情 Post By:2010/8/24 9:55:00 [只看该作者]

For Each c As Col in Tables("xxx").Cols

     if c.DataCol.IsNumeric Then

        c.Width = 100 '100是希望的列宽

     End If

Next


 回到顶部
总数 23 1 2 3 下一页