以文本方式查看主题
- Foxtable(狐表) (http://foxtable.net/bbs/index.asp)
-- 专家坐堂 (http://foxtable.net/bbs/list.asp?boardid=2)
---- [求助]如何提取单元格中的数字? (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=58397)
|
-- 作者:hrw68529
-- 发布时间:2014/10/16 9:04:00
-- [求助]如何提取单元格中的数字?
如下图:在一列(如:内设机构数)提取数字到另一个表中,注:原表中内设机构数列为字符列,提取后的表中的“内设机构数”列为整数列,如何提取转换,同时要删除多余的空格。谢谢图: 此主题相关图片如下:截图01.png
|
-- 作者:Bin
-- 发布时间:2014/10/16 9:09:00
--
提取后面的那个数字?
for each r as row in tables(X).rows if r("内设机构数").Contains(":") then dim dr as datarow = tables(X2).addnew dr("内设机构数")=cint(r("内设机构数").split(":")(1).trim()) end if next
|
-- 作者:有点甜
-- 发布时间:2014/10/16 9:09:00
--
Dim str As String = "13.批准机构: 99 " Dim reg As new System.Text.RegularExpressions.Regex("[0-9]+(?=$| +)") Dim mc As Object = reg.matches(str) msgbox(mc(0).Value)
|
-- 作者:tuyage
-- 发布时间:2014/10/16 9:16:00
--
这个好像跟我的需求是一样的。参考下
|
-- 作者:hrw68529
-- 发布时间:2014/10/16 9:53:00
--
有点甜:给的代码只能转换一个,批量转换一列或几列,怎么弄,一头雾水,谢谢
|
-- 作者:Bin
-- 发布时间:2014/10/16 9:55:00
--
套到2楼的代码去,或者直接用2楼的代码
for each r as row in tables(X).rows Dim str As String = r("内设机构数") Dim reg As new System.Text.RegularExpressions.Regex("[0-9]+(?=$| +)") Dim mc As Object = reg.matches(str) dim dr as datarow = tables(X2).addnew dr("内设机构数")=cint(mc(0).Value) next
|
-- 作者:hrw68529
-- 发布时间:2014/10/16 9:59:00
--
如何是多列怎么办
|
-- 作者:有点甜
-- 发布时间:2014/10/16 10:00:00
--
那就再循环对应的列
[此贴子已经被作者于2014-10-16 10:00:18编辑过]
|
-- 作者:hrw68529
-- 发布时间:2014/10/16 10:04:00
--
执行2楼的代码,出现以下错误: 此主题相关图片如下:截图02.png
|
-- 作者:有点甜
-- 发布时间:2014/10/16 10:06:00
--
For Each r As Row In Tables("X").rows Dim str As String = r("内设机构数") Dim reg As new System.Text.RegularExpressions.Regex("[0-9]+(?=$| +)") Dim mc As Object = reg.matches(str) Dim dr As Row = Tables("X2").addnew dr("第一列")=cint(mc(0).Value) Next
|