返回列表 上一主題 發帖

[發問] 清除看不見的空格並參照

[發問] 清除看不見的空格並參照

從系統下載檔案,
其中有幾個儲存格看似有空格,在討論區得到協助,建立如下VBA
    For Each Rng In Selection
 Rng = Trim(Application.Clean(Rng))
 Next
先以clean再用trim來做刪除空格的整理,
但整理後仍無做開頭以1篩選的處理,
並用vlookup參照到此號碼
能否請看看是什麼狀況呢?
儲存格問題.rar (7.73 KB)

Sub 刪除空格()
For Each Rng In Selection
  Rng.Value = Trim(Application.Clean(Rng)) '加入.value表示Rng是Range
Next
End Sub


Sub 刪除空格()
Dim Rng As Range '這是標準宣告
For Each Rng In Selection
  Rng = Trim(Application.Clean(Rng))
Next
End Sub

TOP

本帖最後由 c_c_lai 於 2015-12-5 09:59 編輯

回復 1# paddyliu
回復 2# 准提部林

你可用其他函式將小於33以下的字元去除掉,
在一般轉入檔案內容時,常會帶入些控制字元。

TOP

回復 3# c_c_lai


第一個隱藏字元CODE=12, 是可以CLEAN去除,
原因是Rng未定義為Range物件, 轉換後值只留在[變數], 而不是取代儲存格的值~~

TOP

本帖最後由 c_c_lai 於 2015-12-5 11:49 編輯

回復 4# 准提部林
沒錯!我是直接使用他的原始程式去偵測,
沒留意到變數未加事前宣告,剛才我
自行再寫一個測試碼,如您的加上變數
宣告,正吶悶為何又 Pass了,謝謝您提醒!
  1. Sub 刪除空格()
  2.     Dim Rng As Range
  3.    
  4.     For Each Rng In Selection
  5.         '  If Not IsError(Rng) Then
  6.             Rng = Trim(Application.Clean(Rng))
  7.         '  End If
  8.     Next
  9. End Sub
複製代碼

TOP

回復 3# c_c_lai
請問大大:
要怎樣設定才能使監看視窗有作用?謝謝!!
如下圖:
test.gif

TOP

回復 6# yen956
如圖說明,應該明瞭了吧!

TOP

回復 6# yen956

TOP

本帖最後由 yen956 於 2015-12-6 17:57 編輯

回復 7# c_c_lai
謝謝c大的指導, 了解了!!

TOP

本帖最後由 yen956 於 2015-12-6 18:02 編輯

謝謝c大詳細的圖解,
難怪我的監看視窗一片空白, 謝謝!!

TOP

        靜思自在 : 甘願做、歡喜受。
返回列表 上一主題