- 相關(guān)推薦
Excel幫你填寫報名信息卡
【簡 介】
每一年的中、高考報名工作中,查找考生姓名、聯(lián)系地址的區(qū)位碼是一項必不可少的工作。查找這些漢字的區(qū)位碼,通常都要對照一本小冊子——《漢字區(qū)位碼手冊》進行查找,這不僅不方便,而且也容易出錯。利用Excel的宏解決了這一問題。
每一年的中、高考報名工作中,查找考生姓名、聯(lián)系地址的區(qū)位碼是一項必不可少的工作。查找這些漢字的區(qū)位碼,通常都要對照一本小冊子——《漢字區(qū)位碼手冊》進行查找,這不僅不方便,而且也容易出錯。利用office/9.shtml' target='_blank' class='article'>Excel的宏解決了這一問題。
1. 建立一Excel工作簿,選擇sheel1工作表,將所有的考生姓名錄入A列中。
2. 打開“工具/宏”,輸入所要創(chuàng)建的宏名(qw),點擊〔創(chuàng)建〕。
3. 在彈出的模塊(代碼)框中錄入如下代碼:
Sub qw()
Dim i, j, k, l, rs As Integer
Dim cc As Long
Dim str, newstr, hz1, hz2, ss As String
i = 0
k = 1
j = 0
'輸入待查姓名人數(shù)
rs = InputBox("待查詢姓名區(qū)位碼人數(shù)?", "請輸入")
str = ""
hz2 = ""
ss = ""
For j = 1 To rs
l = 0
str = Cells(j, 1).Value
'讀取A列中第J行單元格內(nèi)的姓名
For i = 1 To Len(str)
newstr = newstr + Mid(str, i, 1)
If Right(Mid(str, i, 1), 1) = " " Then l = l + 1
Next i
'過濾掉姓名中的空格
If ((l > 0) And (Right(newstr, 1) <> " ")) Then hz1 = MidB(newstr, 1, 2) + Right(newstr, 2)
If ((l > 0) And (Right(newstr, 1) = " ")) Then hz1 = newstr
If l = 0 Then hz1 = newstr
If Len(hz1) < 1 Then End
'計算漢字所對應(yīng)的區(qū)位碼
For k = 1 To Len(hz1) + 2 Step 2
ss = MidB(hz1, k, 2)
cc = Asc(ss)
If cc < 0 Then
cc = cc + 65535 + 1
If cc > 255 Then
b2 = Right("0" && ((cc And 255) - 160), 2)
b1 = Right("0" && (Int(cc / 256) - 160), 2)
End If
End If
'用"'"分開每一漢字的區(qū)位碼
If cc > 255 Then hz2 = hz2 + b1 + b2 + "'"
Next k
'在B列中輸出A列中相應(yīng)姓名的區(qū)位碼
Cells(j, 2) = hz2
newstr = ""
hz2 = ""
Next j
End Sub
4. 在確認A列中已輸入完所要查詢的考生姓名后,就可以打開“工具/宏”,選擇剛剛創(chuàng)建的宏名(qw)。點擊〔執(zhí)行〕,在彈出的對話框中輸入想要查詢的人數(shù),點擊〔確定〕按鈕,所有的姓名都被自動轉(zhuǎn)換了。
【Excel幫你填寫報名信息卡】相關(guān)文章:
Excel統(tǒng)計信息重復(fù)出現(xiàn)次數(shù)11-11
讓Excel說話11-11
EXCEL兩則技巧11-11
“蓋章”—我選用Excel11-11
Excel:工作表錦上添花11-11
“蓋章”——我選用Excel11-11
聽著就行 讓Excel報賬11-11
雙擊在Excel中的妙用11-11
Excel顯示值計算11-11