Foxtable(狐表)用户栏目专家坐堂 → 如何固定单元格按照固定格式输入


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

主题:如何固定单元格按照固定格式输入

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


加好友 发短信
等级:小狐 帖子:389 积分:3886 威望:0 精华:0 注册:2016/4/25 17:36:00
如何固定单元格按照固定格式输入  发帖心情 Post By:2022/11/21 10:52:00 [只看该作者]

各位大神,请教一下如何让某个单元格只能输入类似以下的格式,其他格式非法:

数字----合法,例如35,9
数字*数字---合法,例如25*30,9*12
数字*数字+数字----合法,例如30*40+5,5*23+4

其他都不合法

这个咋写啊


 回到顶部
帅哥,在线噢!
有点蓝
  2楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:110579 积分:562791 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2022/11/21 10:59:00 [只看该作者]

Dim s As String = "30*40+5,5*23+4"
Dim p As String = "^[0-9.*+,]+$"
Dim rgx = New System.Text.RegularExpressions.Regex(p, System.Text.RegularExpressions.RegexOptions.IgnoreCase)
If Not rgx.isMatch(s) Then
    msgbox("非法字")
End If

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


加好友 发短信
等级:小狐 帖子:389 积分:3886 威望:0 精华:0 注册:2016/4/25 17:36:00
  发帖心情 Post By:2022/11/21 11:10:00 [只看该作者]

这就是传说中的正则表达式吗?这个方面有推荐的教程看看吗,百度了一下,完全没看懂图片点击可在新窗口打开查看
另外,要取数字的值,就是根据帮助里的找到*和+的位置,然后左右取值之类的是吧

 回到顶部
帅哥,在线噢!
有点蓝
  4楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:110579 积分:562791 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2022/11/21 11:35:00 [只看该作者]

取数字直接拆分即可

Dim s As String = "30*40+5,5*23+4"
dim s1() as string = s.split(",")
msgbox(s1(0))
dim s2() as string = s1(0).split("*","+")
msgbox(s2(0))
msgbox(s2(1))

 回到顶部