Foxtable(狐表)用户栏目专家坐堂 → [求助]动态增加表


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

主题:[求助]动态增加表

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


加好友 发短信
等级:童狐 帖子:255 积分:2359 威望:0 精华:0 注册:2011/4/25 9:23:00
[求助]动态增加表  发帖心情 Post By:2011/5/25 12:04:00 [只看该作者]

我想以某个表的单元格内容作为表名来动态增加表,但使用ADOXBuilder的话要重新打开项目才会出现这个新表。有没有什么办法可以无需重新打开项目就可以直接生成新表的?

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


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

生成好后,用OuterTableBuilder动态加载你生成的表。


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


加好友 发短信
等级:童狐 帖子:255 积分:2359 威望:0 精华:0 注册:2011/4/25 9:23:00
  发帖心情 Post By:2011/5/25 14:54:00 [只看该作者]

OuterTableBuilder不是用外部数据源来生成外部表的吗?不太了解这个语句的使用

 

我有现在这段代码:

 

Dim Builder As New ADOXBuilder

Dim tbl As ADOXTable

Builder.Open()

tbl = Builder.NewTable("订单") '创建表

With tbl

    .AddColumn("日期" ,ADOXType.DateTime)

    .AddColumn("产品" ,ADOXType.String, 12)

    .AddColumn("客户" ,ADOXType.String, 20)

    .AddColumn("数量" ,ADOXType.Integer)

    .AddColumn("备注" ,ADOXType.Text)

End With

Builder.AddTable(tbl) '增加表

Builder.Close()

 

我新增的表“订单”要重新打开项目后才能显示,如果我想运行完一段代码后就能显示,剩下的代码应该怎么写?


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


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

Dim Builder As New ADOXBuilder
Dim tbl As ADOXTable
Builder.Open()
tbl = Builder.NewTable("订单") '创建表
With tbl
    .AddColumn("日期" ,ADOXType.DateTime)
    .AddColumn("产品" ,ADOXType.String, 12)
    .AddColumn("客户" ,ADOXType.String, 20)
    .AddColumn("数量" ,ADOXType.Integer)
    .AddColumn("备注" ,ADOXType.Text)
End With
Builder.AddTable(tbl) '增加表
Builder.Close()
Dim q As new QueryBuilder
q.C订单"
q.SelectString = "Select * From {订单} "
q.Build
MainTable = Tables("订单")

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


加好友 发短信
等级:童狐 帖子:255 积分:2359 威望:0 精华:0 注册:2011/4/25 9:23:00
  发帖心情 Post By:2011/5/25 15:16:00 [只看该作者]

网速悲剧,发重了。。。

[此贴子已经被作者于2011-5-25 15:18:23编辑过]

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


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

Dim Builder As New ADOXBuilder
Dim tbl As ADOXTable
Builder.Open()
tbl = Builder.NewTable("BOM") '创建表
With tbl
    .AddColumn("序号" ,ADOXType.Integer)
    .AddColumn("材料编码" ,ADOXType.String, 50)
    .AddColumn("材料名称" ,ADOXType.String, 50)
    .AddColumn("型号规格" ,ADOXType.String, 50)
    .AddColumn("单机量" ,ADOXType.Double)
    .AddColumn("装入位号" ,ADOXType.String, 50)
    .AddColumn("分工" ,ADOXType.String, 50)
    .AddColumn("功能" ,ADOXType.String, 50)
End With
Builder.AddTable(tbl) '增加表
Builder.Close()
Dim q As new QueryBuilder
q.Table Name = "BOM"
q.SelectString = "Select * From {BOM} "
q.Build
MainTable = Tables("BOM")

 

注意:

q.Table Name = "BOM"

Table Name中的空格要删除,论坛限制,不加空格上不来。


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


加好友 发短信
等级:童狐 帖子:255 积分:2359 威望:0 精华:0 注册:2011/4/25 9:23:00
  发帖心情 Post By:2011/5/25 15:30:00 [只看该作者]

上面的代码能显示“订单”表了,但这个表是查询表,不能编辑,我后续需要往里面填充数据和运算的。能不能生成一个普通的表啊?

[此贴子已经被作者于2011-5-25 15:41:50编辑过]

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


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

以后改进,下次更新可以

 


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


加好友 发短信
等级:幼狐 帖子:156 积分:1627 威望:0 精华:0 注册:2011/4/20 10:44:00
  发帖心情 Post By:2011/5/25 16:07:00 [只看该作者]

  发帖心情 Post By:2011-5-25 15:38:00 [只看该作者]

以后改进,下次更新可以

 

顶一个


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


加好友 发短信
等级:婴狐 帖子:21 积分:464 威望:0 精华:0 注册:2013/1/24 15:52:00
  发帖心情 Post By:2013/1/25 12:47:00 [只看该作者]

Syscmd.Project.Open(ProjectFile) '动态创建的表和列之后,都必须重新打开项目,可以使用这个代码重新打开当前项目.

 回到顶部