Excel 테이블에서 한자의 첫 글자를 추출하는 기능
도구-宏-visualbasic 편집기, 새 모듈을 만들고 다음 코드를 모듈에 복사합니다.그리고 pinyin (mystring) 을 작업장 함수로 사용할 수 있습니다.
예: a1 칸에 문자 [아중]이 있고 b1 칸에 함수 = pinyin(a1)b1을 입력하면 [AZ] 코드가 출력됩니다.
- Public Function pinyin(mystr As String) As Variant ' , : 。
- On Error Resume Next
- mystr = StrConv(mystr, vbNarrow)
-
- Dim returnStr As String
-
- Dim i As Integer
- Dim curWord As String
- For i = 1 To Len(mystr)
-
- curWord = Mid(mystr, i, 1)
-
- If Asc(curWord) <> 0 And Err.Number <> 1004 Then
- returnStr = returnStr & getFirstLetterOfCnWord(curWord)
- End If
- Next i
-
- pinyin = returnStr
-
-
- End Function
-
- Public Function isCNWord(mystr As String) As Boolean
- Dim flag As Boolean
- flag = False
- If Len(mystr) <> LenB(mystr) Then
- flag = True
- End If
- isCNWord = flag
- End Function
-
-
-
- Public Function getFirstLetterOfCnWord(mystr As String) As String
- If Asc(mystr) < 0 Then
- If Asc(Left$(mystr, 1)) < Asc(" ") Then
- getFirstLetterOfCnWord = "0"
- Exit Function
- End If
- If Asc(Left$(mystr, 1)) >= Asc(" ") And Asc(Left$(mystr, 1)) < Asc(" ") Then
- getFirstLetterOfCnWord = "A"
- Exit Function
- End If
- If Asc(Left$(mystr, 1)) >= Asc(" ") And Asc(Left$(mystr, 1)) < Asc(" ") Then
- getFirstLetterOfCnWord = "B"
- Exit Function
- End If
- If Asc(Left$(mystr, 1)) >= Asc(" ") And Asc(Left$(mystr, 1)) < Asc(" ") Then
- getFirstLetterOfCnWord = "C"
- Exit Function
- End If
- If Asc(Left$(mystr, 1)) >= Asc(" ") And Asc(Left$(mystr, 1)) < Asc(" ") Then
- getFirstLetterOfCnWord = "D"
- Exit Function
- End If
- If Asc(Left$(mystr, 1)) >= Asc(" ") And Asc(Left$(mystr, 1)) < Asc(" ") Then
- getFirstLetterOfCnWord = "E"
- Exit Function
- End If
- If Asc(Left$(mystr, 1)) >= Asc(" ") And Asc(Left$(mystr, 1)) < Asc(" ") Then
- getFirstLetterOfCnWord = "F"
- Exit Function
- End If
- If Asc(Left$(mystr, 1)) >= Asc(" ") And Asc(Left$(mystr, 1)) < Asc(" ") Then
- getFirstLetterOfCnWord = "G"
- Exit Function
- End If
- If Asc(Left$(mystr, 1)) >= Asc(" ") And Asc(Left$(mystr, 1)) < Asc(" ") Then
- getFirstLetterOfCnWord = "H"
- Exit Function
- End If
- If Asc(Left$(mystr, 1)) >= Asc(" ") And Asc(Left$(mystr, 1)) < Asc(" ") Then
- getFirstLetterOfCnWord = "J"
- Exit Function
- End If
- If Asc(Left$(mystr, 1)) >= Asc(" ") And Asc(Left$(mystr, 1)) < Asc(" ") Then
- getFirstLetterOfCnWord = "K"
- Exit Function
- End If
- If Asc(Left$(mystr, 1)) >= Asc(" ") And Asc(Left$(mystr, 1)) < Asc(" ") Then
- getFirstLetterOfCnWord = "L"
- Exit Function
- End If
- If Asc(Left$(mystr, 1)) >= Asc(" ") And Asc(Left$(mystr, 1)) < Asc(" ") Then
- getFirstLetterOfCnWord = "M"
- Exit Function
- End If
- If Asc(Left$(mystr, 1)) >= Asc(" ") And Asc(Left$(mystr, 1)) < Asc(" ") Then
- getFirstLetterOfCnWord = "N"
- Exit Function
- End If
- If Asc(Left$(mystr, 1)) >= Asc(" ") And Asc(Left$(mystr, 1)) < Asc(" ") Then
- getFirstLetterOfCnWord = "O"
- Exit Function
- End If
- If Asc(Left$(mystr, 1)) >= Asc(" ") And Asc(Left$(mystr, 1)) < Asc(" ") Then
- getFirstLetterOfCnWord = "P"
- Exit Function
- End If
- If Asc(Left$(mystr, 1)) >= Asc(" ") And Asc(Left$(mystr, 1)) < Asc(" ") Then
- getFirstLetterOfCnWord = "Q"
- Exit Function
- End If
- If Asc(Left$(mystr, 1)) >= Asc(" ") And Asc(Left$(mystr, 1)) < Asc(" ") Then
- getFirstLetterOfCnWord = "R"
- Exit Function
- End If
- If Asc(Left$(mystr, 1)) >= Asc(" ") And Asc(Left$(mystr, 1)) < Asc(" ") Then
- getFirstLetterOfCnWord = "S"
- Exit Function
- End If
- If Asc(Left$(mystr, 1)) >= Asc(" ") And Asc(Left$(mystr, 1)) < Asc(" ") Then
- getFirstLetterOfCnWord = "T"
- Exit Function
- End If
- If Asc(Left$(mystr, 1)) >= Asc(" ") And Asc(Left$(mystr, 1)) < Asc(" ") Then
- getFirstLetterOfCnWord = "W"
- Exit Function
- End If
- If Asc(Left$(mystr, 1)) >= Asc(" ") And Asc(Left$(mystr, 1)) < Asc(" ") Then
- getFirstLetterOfCnWord = "X"
- Exit Function
- End If
- If Asc(Left$(mystr, 1)) >= Asc(" ") And Asc(Left$(mystr, 1)) < Asc(" ") Then
- getFirstLetterOfCnWord = "Y"
- Exit Function
- End If
- If Asc(Left$(mystr, 1)) >= Asc(" ") Then
- getFirstLetterOfCnWord = "Z"
- Exit Function
- End If
- Else
- If UCase$(mystr) <= "Z" And UCase$(mystr) >= "A" Then
- getFirstLetterOfCnWord = UCase$(Left$(mystr, 1))
- Else
- getFirstLetterOfCnWord = mystr
- End If
- End If
- End Function
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
Excel Grep toolExcel Grep tool ■히나가타 ■ 시트 구성 ExcelGrep.cls...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.