Board logo

標題: 如何把全形"句號."改為半形"句號."? [打印本頁]

作者: mhl9mhl9    時間: 2018-9-8 23:49     標題: 如何把全形"句號."改為半形"句號."?

如何把全形"句號."改為半形"句號."?
x=strconv("abcd.abcd",vbnarrow)改不了,不知什麼問題,謝謝各位幫忙
作者: infoverdad    時間: 2018-9-9 17:35

回復 1# mhl9mhl9

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

請參考論壇中的 http://forum.twbts.com/thread-7533-1-1.html
作者: mhl9mhl9    時間: 2018-9-9 21:16

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

本帖最後由 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
複製代碼

作者: mhl9mhl9    時間: 2018-9-10 18:31

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




歡迎光臨 麻辣家族討論版版 (http://forum.twbts.com/)