首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Excel -使用IF和OR

Excel -使用IF和OR
EN

Stack Overflow用户
提问于 2022-03-30 13:25:51
回答 2查看 59关注 0票数 1

下面是我的代码作为文本:

代码语言:javascript
复制
 Function NurZahl(ByVal Text As String) As Long
    Dim i%, tmp
    Dim Val As String
    
    For i = 1 To Len(Text)
      Val = Mid(Text, i, 1)
        If(OR(IsNumeric(Val),Val=","),TRUE, FALSE) Then tmp = tmp & Mid(Text, i, 1)
    Next i
    NurZahl = tmp
End Function

完整的初学者:

  • 如果是的话我有什么问题?
  • 有没有可能向我展示excel的确切问题?
  • 文本仅用红色高亮显示--如果我在上面的鼠标箭头中悬停,就不会出现错误消息。
  • 这是我的if结构的知识来源:支持微软 --这是我错误的文档类型吗?

现在在您的帮助下得到了解决方案(感谢所有答复者)--我想从字符串中提取一个十进制数:

代码语言:javascript
复制
Function CleanString(strIn As String) As String
    Dim objRegex
    Set objRegex = CreateObject("vbscript.regexp")
    With objRegex
     .Global = True
     .Pattern = "[^\d,]+"
    CleanString = .Replace(strIn, vbNullString)
    End With
End Function
EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2022-03-30 13:52:28

"If“行的编写方式类似于Excel公式。这就是基本应该是什么样子。

代码语言:javascript
复制
If IsNumeric(Val) Or Val = "," Then tmp = tmp & Mid(Text, i, 1)

红色文本是语法错误。如果您转到“调试”菜单并单击“编译VBA项目”,您将得到错误消息。

包含的链接用于输入到单元格中的函数。你需要一个VBA参考。这里有一个链接到MS的参考,但一本不错的书会使你的生活更容易。只需搜索"Excel“即可。

https://learn.microsoft.com/en-us/office/vba/api/overview/

票数 1
EN

Stack Overflow用户

发布于 2022-03-30 13:46:12

你可以试试这样的东西:

代码语言:javascript
复制
Function NurZahl (ByVal MyText As String) As Long

    ' Set up the variables
    Dim i as Integer
    Dim tmp as String
    Dim MyVal As String

    ' Start tmp with an empty string
    tmp = ""
    
    ' Loop through each character of the input MyText
    For i = 1 To Len(MyText)

      ' Read the character
      MyVal = Mid(MyText, i, 1)

      ' Check whether the character is a number or a comma
      ' and take reasonable action
      If IsNumeric(MyVal) or MyVal = "," then
          tmp = tmp & Mid(MyText, i, 1)
      End if

    Next i

    NurZahl = tmp

End Function

你必须改变上面的代码来做你想做的事情。上面的例子是展示如何编写VBA代码。

在VBA编辑器中,当您在一行上看到红色时,意味着编辑器检测到了一些问题。

如果要用Excel编写此函数,则通常在以下单元格中使用该函数:=NurZahl(A1)

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/71678088

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档