函數功能及結構介紹:
1.LEN 返回文本串的字符數。
Len( text) Len(string | varname)
Len 函數的語法有下面這些部分:
string 任何有效的字符串表達式。如果 string 包含 Null,會返回 Null。
Varname 任何有效的變量名稱。如果 varname 包含 Null,會返回 Null。如果 varname 是 Variant,Len 會視其為 String 並且總是返回其包含的字符數。
2.lenb 返回文本串的字節數
3.find函數的語法格式
=find(find_text,within_text,start_num)
Find(要查找的文本,文本所在的單元格,從第幾個字符開始查找[可選,省略默認為1,從第一個開始查找])。
4.LEFT(text,num_chars)Text 是包含要提取字符的文本字符串。Num_chars 指定要由 LEFT 所提取的字符數。Num_chars 必須大於或等於 0。如果 num_chars 大於文本長度,則 LEFT 返回所有文本。如果省略 num_chars,則假定其為 1。
如下圖所示,在excel 要將text列中的所有的非hardcode去掉,所謂hardcode 即代碼中直接用了中文,但是"引號是abap代碼中的注釋,因此注釋中含中文則不算hardcode,我們要做的就是把純hardcore篩選出來,然后分發給相關的開發人員去修改。
為了實現上面的功能,綜合使用了幾個excel中的函數,如下:
=IF(LEN(LEFT(A2,FIND("""",A2)-1))=LENB(LEFT(A2,FIND("""",A2)-1)),0,1)
對該公式的解釋:
1,首先利用find函數找出"在字符串中的位置,如果一個字符串中有多個",則find函數返回第一個"出現的位置, 即 FIND("""",A2),如果壓根就不存在",則會出現#value
2,利用left 函數將" 左邊的字符串截取出來,即LEFT(A2,FIND("""",A2)-1)
3,用len,lenb分別判斷第二步截取的字符串的字符數以及字節數,用if函數判斷,若相等則說明"左邊全是非中文的字符,用0標記,說明不存在hardcode;若不等則說明"左邊存在中文字符,用1標記,說明存在hardcore。即=IF(LEN(LEFT(A2,FIND("""",A2)-1))=LENB(LEFT(A2,FIND("""",A2)-1)),0,1)
至此,我們在type列將得到三種不同的值,即0,1,#value。其中,type 為0的為非hardcore,我們應該刪除,為1和#value為hardcore,我們應該取出來發給相關的開發去修改。