返回列表 上一主題 發帖

如何把全形"句號."改為半形"句號."?

如何把全形"句號."改為半形"句號."?

如何把全形"句號."改為半形"句號."?
x=strconv("abcd.abcd",vbnarrow)改不了,不知什麼問題,謝謝各位幫忙
lmh

回復 1# mhl9mhl9

猜測是否因為您的原文有雙引號? 如果是要用兩個雙引號才會正確
例如:
=SUBSTITUTE("x=strconv(""abcd.abcd"",vbnarrow)",".",".")
=ASC("x=strconv(""abcd.abcd"",vbnarrow)")

請參考論壇中的 http://forum.twbts.com/thread-7533-1-1.html

TOP

回復 2# infoverdad
謝謝2#
我沒有表達清楚,我有90萬條字串([A1:A900000]),有些字串是一樣的,但因為標點符號有的用全形,有的用半形,所以必須統一用半形.
[a1]=strconv([a1],vbnarrow),[a1]里全形標點符號都改為半形了,唯獨全形句號,不會被改成半形句號,不知道什麼原因,尋求解決方法,謝謝
lmh

TOP

本帖最後由 faye59 於 2018-9-9 22:23 編輯

回復 3# mhl9mhl9


    試試看!
  1. Sub ex()
  2. For Each aa In Sheets("工作表1").Range([A1], [A1].End(xlDown))
  3.     aa.Offset(, 0) = StrType(aa)
  4. Next
  5. End Sub
  6. Function StrType(Mystr)
  7. For i = 1 To Len(Mystr)
  8.     k = AscW(Mid(Mystr, i))
  9.     Select Case k
  10.     Case 12290 '全型句號
  11.         Textstring = Textstring & "."
  12.     Case Else
  13.         Textstring = Textstring & Mid(Mystr, i, 1)
  14.     End Select
  15. Next
  16. StrType = Textstring
  17. End Function
複製代碼
一分努力,一分收穫。
發問題前可以先搜索內文是否有相關範例。

TOP

回復 4# faye59
(1)首先道歉,我的命題是錯的: x=strconv(y,vbnarrow)>>>y里所有全形標點符號都改成半形標點符號,結果x是正確的答案.
之所以我會提出錯誤命題是因為我收集到的"字串"里包含的不是"全形標點.",不知道是什麼符號貌似全形句號,所以strconv函數不能把它轉為半形句號.
(2) 我現在使用這個方法>>>>  r1.Replace ".", ".", xlPart>>>>r1=[a1:a100000],10萬個字串里不明符號.全部改為.了
lmh

TOP

        靜思自在 : 布施如播種,以歡喜心滋潤種子,才會發芽。
返回列表 上一主題