返回列表 上一主題 發帖

請教判斷中文字的語法 ?

本帖最後由 luhpro 於 2015-4-30 22:13 編輯
假如[a1]的第2個字為中文字則[a2]=1 的語法 ?

if mid([a1],2,1) like ???? then  [a2]=1
t8899 發表於 2015-4-30 15:17

這樣也可以 :
  1. Sub nn()
  2.   Dim sStr$, lPos&
  3.   
  4.   sStr = Mid([A1], 2, 1)
  5.   If sStr <> "" Then
  6.     lPos = Asc(sStr)
  7.     If lPos <= 0 Then [A2] = 1 Else [A2] = 0
  8.   End If
  9. End Sub
複製代碼

TOP

謝謝
我找到一個最簡單的,供參考
If Asc(mid([a1],2,1)) < 0 Then [a2]=1
t8899 發表於 2015-5-1 08:59

我之所以會用
If sStr <> "" Then
這一行的原因是 :
如果 [A1] 儲存格的內容只有 1 個英數字 或是 沒有資料,
那麼 Asc(mid([a1],2,1)) 會出現錯誤訊息.

當然, 原式若要簡化是可以把 lPos 拿掉:
  1. Sub nn()
  2.   Dim sStr$
  3.   
  4.   sStr = Mid([A1], 2, 1)
  5.   If sStr <> "" Then
  6.     If Asc(sStr) <= 0 Then [A2] = 1 Else [A2] = 0
  7.   End If
  8. End Sub
複製代碼

TOP

        靜思自在 : 忘功不忘過,忘怨不忘恩。
返回列表 上一主題