You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何将VBA代码中的If Statement转换为Select Case Statement

替换VBA代码中的If语句为Select Case语句

以下是修改后的完整代码,将原函数中的If条件判断替换为Select Case形式,逻辑功能保持不变:

Sub Macro1()
    Dim str As String
    str = Sheets("Sheet1").Range("A1").Value
    hasArabic (str)
End Sub

Function hasArabic(str As String) As Boolean
    Dim i As Long
    Dim charCode As Long
    For i = 1 To Len(str)
        charCode = AscW(Mid(str, i, 1))
        Select Case charCode
            Case &H600 To &H6FF
                hasArabic = True
                Exit Function
        End Select
    Next i
End Function

修改说明

  1. 新增charCode变量存储当前字符的Unicode编码,让代码结构更清晰;
  2. 使用Select Case替代原If语句,通过Case &H600 To &H6FF直接匹配目标编码区间;
  3. 匹配成功后同样设置返回值为True并退出函数,和原代码的执行逻辑完全一致。

内容的提问来源于stack exchange,提问作者Danny Coleiro

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.30 19:16:02