2015-04-01 33 views
0

數據例子不同:FMNLA PROCESSED 14年10月29日55021549616216 ***** 2934串編輯:刪除文本和數據的特殊字符是在每個小區中

這是合同的編碼和爲每個合同不同。我需要刪除文本,如果有的話,包括日期。如果它被編碼,這個信息總是在開始處。我還需要刪除*並在每個2位數字後插入一個逗號,但我應該可以做到這一點。基本上,空格之前的任何文本都應該被刪除,但它必須運行多次才能刪除日期文本的每個部分。

該數據從Excel導入。我無法讓Excel公式在那裏工作。如果我按Ctrl H查找*,則查找文本將轉到沒有*的單元格。我試圖將格式從普通文本改爲文本格式,但它不起作用。而且,我不知道有什麼辦法擺脫可變的文本/日期信息,因爲它也包含數字,所以我決定看看Access可以做什麼。我在Access中做了很多基本的東西,但沒有代碼。有大約400個合同,所以編輯太費時。

我期待的樣品的結果是:55,02,15,49,61,62,16,29,34

我希望我有一個協助足夠的背景!

回答

0

請嘗試(在Excel)查找內容:*(星號空間),全部替換,依次爲:

=SUBSTITUTE(A1,"*****",",") 
0

這將讓你的數據的最後一個 「塊」:

=SUBSTITUTE(TRIM(RIGHT(SUBSTITUTE(A1," ",REPT(" ",255)),255)),"*","") 

插入一個逗號每秒字符需要一個UDF,這將做到這一點:

Function AddCommas(MyText As String) As String 
Dim X As Long, TempText As String 
If Len(MyText) < 3 Then 
    InsertComma = MyText 
Else 
    TempText = Left(MyText, 2) 
    For X = 3 To Len(MyText) Step 2 
     TempText = TempText & "," & Mid(MyText, X, 2) 
    Next X 
    AddCommas = TempText 
End If 
End Function 

則Y你可以這樣包裝原始公式:

=AddCommas(SUBSTITUTE(TRIM(RIGHT(SUBSTITUTE(A1," ",REPT(" ",255)),255)),"*","")) 
相關問題