Foxtable(狐表)用户栏目专家坐堂 → 将字符列转换为数字列


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

主题:将字符列转换为数字列

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


加好友 发短信
等级:婴狐 帖子:62 积分:691 威望:0 精华:0 注册:2011/8/15 7:01:00
将字符列转换为数字列  发帖心情 Post By:2014/10/6 11:20:00 [只看该作者]

老师好!我将原来的数据库导入,发现很多数字列被狐表自动转换为字符列,造成无法统计
有什么好办法,批量修改这些列的属性,我试过直接修改表属性,失败,麻烦了,谢谢!(数据量太大)

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


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2014/10/6 11:29:00 [只看该作者]

 呃,你导入的是excel表格?如果你那一列为全数字的话,不可能转成字符列的。

 

 请做例子发上看看,或者把数据弄上来看看。


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


加好友 发短信 一级勋章
等级:超级版主 帖子:7258 积分:40773 威望:0 精华:16 注册:2008/8/31 23:23:00
  发帖心情 Post By:2014/10/6 12:52:00 [只看该作者]

备份Excel文件,删除标题行(前几行不能有字符型文字),重新导入!

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


加好友 发短信 一级勋章
等级:超级版主 帖子:7258 积分:40773 威望:0 精华:16 注册:2008/8/31 23:23:00
  发帖心情 Post By:2014/10/6 12:55:00 [只看该作者]

对了,狐表项目文件已保存了的话,里面的表仍需手工处理!

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


加好友 发短信
等级:婴狐 帖子:62 积分:691 威望:0 精华:0 注册:2011/8/15 7:01:00
  发帖心情 Post By:2014/10/6 14:27:00 [只看该作者]

谢谢!我还是希望在狐表中处理,我试过在电子表格中处理,然后倒入,但是导入导入都是空白的

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


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2014/10/6 14:29:00 [只看该作者]

 数据发上来

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


加好友 发短信 一级勋章
等级:超级版主 帖子:7258 积分:40773 威望:0 精华:16 注册:2008/8/31 23:23:00
  发帖心情 Post By:2014/10/6 14:31:00 [只看该作者]

搜一下,我发过帖子,按条件导入,判断其为非数字时,跃过导入下一行!

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


加好友 发短信
等级:婴狐 帖子:62 积分:691 威望:0 精华:0 注册:2011/8/15 7:01:00
  发帖心情 Post By:2014/10/6 14:37:00 [只看该作者]

大家好!根据一天的实验,暂时发现,先导出电子表格,删除数据,用一些无效的文本和数字填写在第一行(不包括标题行),用狐表导入(我发现最快的生成表的方法,特别是对于字段多的表格),删除无效数据,直接将数据源的数据复制到新表,文本格式的数字自动转换为数字格式的数字,狐表真的强大。

不过我还是恳请哪位大侠教我如何用代码实现

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


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2014/10/6 14:40:00 [只看该作者]

 不理解你什么意思,直接导入。

 

 如果要修改表结构,参考http://www.foxtable.com/help/topics/2122.htm

 


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


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

逐个单元格导入,保证不会有奇怪的现象发生,以下为核心代码,供参考:

Dim nms() As String =  {"FillDate","AcceptNo","Name","Quantity","Weight","Price","Cost","Remark"}

Dim dlg As New OpenFileDialog '定义一个新的OpenFileDialog
dlg.Filter= "Excel文件|*.xls;*.xlsx" '设置筛选器
If dlg.ShowDialog = DialogResult.Ok Then '如果用户单击了确定按钮
         
    Dim Book As New XLS.Book(dlg.FileName)
    Dim Sheet As XLS.Sheet = Book.Sheets(0)
   
    DataTables(lsb).DataRows.Clear
   
    Dim r As Row
    Tables(lsb).AddNew(Sheet.Rows.Count-1)
   
    For m As Integer = 0 To nms.Length - 1
        For k As Integer = 1 To Sheet.Rows.Count -1
            r = Tables(lsb).Rows(k-1)
            r(nms(m)) = Sheet(k,m).Value
        Next
    Next
End If


 回到顶部