[算表] VBA找出哪一欄含有小寫或空格

看板Office作者 (嫑槑)時間7年前 (2019/02/04 14:49), 編輯推噓1(1013)
留言14則, 2人參與, 7年前最新討論串1/1
軟體:excel 版本:2010 例如要判斷A1欄位是否含小寫字母或前後多餘空格,使用EXCEL公式只要打上 =EXACT(A1,TRIM(UPPER(A1))) 不管是數字還是文字任何格式都可以正確判斷 但是在VBA裡面卻遇到困難,使用下列判斷時 format(Cells(1, 1))=trim(ucase(format(Cells(1, 1)))) 大部分可以判斷正確, 但是如果欄位本身是數字,卻已轉換為文字格式,並且加上一個空格 VBA就判斷不出左右兩邊有差異 請問要如何調整, 或者有其他更好的方法方法,用VBA正確判斷出欄位是否含小寫字母或前後多餘空格 並且欄位中不管是數字還是文字或文字混數字都可以正確判斷 謝謝 -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 61.223.124.159 ※ 文章網址: https://www.ptt.cc/bbs/Office/M.1549262957.A.124.html

02/04 15:08, 7年前 , 1F
連結內判斷結果是
02/04 15:08, 1F

02/04 15:09, 7年前 , 2F
正確的話 Cells(i, 1).Text = Trim(UCase(Cells(i, 1)))
02/04 15:09, 2F

02/04 15:09, 7年前 , 3F
上面的變數是要測試連結內用的迴圈變數,請修改為1
02/04 15:09, 3F

02/04 15:12, 7年前 , 4F
也可以用的工作表公式=exact(...),就以evaluate去包原公
02/04 15:12, 4F

02/04 15:12, 7年前 , 5F
02/04 15:12, 5F

02/04 15:12, 7年前 , 6F
感謝S大回覆,預祝您新年快樂喔
02/04 15:12, 6F

02/04 15:14, 7年前 , 7F
但原公式和巨集內用的trim有點不太一樣
02/04 15:14, 7F

02/04 15:16, 7年前 , 8F
如果空格是在字串或數字內二個以上,巨集內的trim是不會刪
02/04 15:16, 8F

02/04 15:17, 7年前 , 9F
除的,而工作表函數trim內的話則會刪除保留一個
02/04 15:17, 9F

02/04 15:18, 7年前 , 10F
所以這方面就要看那個才是原po要的,如是工作表函數才為正
02/04 15:18, 10F

02/04 15:19, 7年前 , 11F
確的話,就以worksheetfunction.trim方式
02/04 15:19, 11F

02/04 15:22, 7年前 , 12F
如不會出現或只會有一個空白字元的話,那連結內所舉例的十
02/04 15:22, 12F

02/04 15:22, 7年前 , 13F
個條件則會是一致的
02/04 15:22, 13F

02/04 16:57, 7年前 , 14F
了解,感謝S大提醒
02/04 16:57, 14F
文章代碼(AID): #1SL-1j4a (Office)
文章代碼(AID): #1SL-1j4a (Office)