以文本方式查看主题

-  Foxtable(狐表)  (http://www.foxtable.com/bbs/index.asp)
--  专家坐堂  (http://www.foxtable.com/bbs/list.asp?boardid=2)
----  在SQLGroupTableBuilder等专业统计工具中统计出的列如何自动设置最佳列宽?  (http://www.foxtable.com/bbs/dispbbs.asp?boardid=2&id=7953)

--  作者:shixia
--  发布时间:2010/8/23 15:35:00
--  在SQLGroupTableBuilder等专业统计工具中统计出的列如何自动设置最佳列宽?

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


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

--  作者:donaldwc
--  发布时间:2010/8/23 16:10:00
--  
关注中...............
--  作者:czy
--  发布时间:2010/8/23 16:40:00
--  
系统菜单内置了一个最佳列宽,Sendkeys试试。
--  作者:czy
--  发布时间: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)


--  作者:狐狸爸爸
--  发布时间: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
--  发布时间:2010/8/23 17:10:00
--  
Sendkeys.Send("{Tab 3}~") 是什么意思?  "{Tab 3}~"帮助里没有哦

--  作者:donaldwc
--  发布时间:2010/8/23 17:46:00
--  [求助] 公司的EXCEL要多人使用,同时保存共享容易闪退,请问买狐表可以解决么

收藏


--  作者:czy
--  发布时间: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
--  发布时间: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编辑过]

--  作者:狐狸爸爸
--  发布时间: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