Excel表格中利用正向零寬斷言求金額的妙招
在日常工作中,我們經(jīng)常需要對(duì)Excel表格中的數(shù)據(jù)進(jìn)行處理。有時(shí)候,表格中的數(shù)據(jù)非常凌亂,需要我們進(jìn)行復(fù)雜的計(jì)算和篩選。本文將分享一個(gè)利用正向零寬斷言求金額的妙招,幫助大家更加高效地處理Excel表格
在日常工作中,我們經(jīng)常需要對(duì)Excel表格中的數(shù)據(jù)進(jìn)行處理。有時(shí)候,表格中的數(shù)據(jù)非常凌亂,需要我們進(jìn)行復(fù)雜的計(jì)算和篩選。本文將分享一個(gè)利用正向零寬斷言求金額的妙招,幫助大家更加高效地處理Excel表格。
1. 準(zhǔn)備工作
如圖所示,在Excel表格中,B列單元格中的數(shù)據(jù)很凌亂,需要我們?cè)诹鑱y的數(shù)據(jù)中求金額和。首先,我們需要啟用“開發(fā)工具”功能,具體操作為在工作表中點(diǎn)擊菜單欄【文件】-【選項(xiàng)】-【自定義功能區(qū)】,勾選“開發(fā)工具”選項(xiàng)卡后保存。
2. 進(jìn)入VBA編輯界面
在工作表中,點(diǎn)擊菜單欄【開發(fā)工具】,在其工具欄內(nèi),點(diǎn)擊【Visual Basic】。這會(huì)讓你進(jìn)入VBA編輯界面!再點(diǎn)擊菜單欄【插入】,在其下拉菜單中,選擇【模塊】,會(huì)彈出模塊編輯窗口。
3. 輸入代碼
在代碼編輯窗口輸入以下代碼:
```
Sub test()
Set regx CreateObject("")
With regx
.Global True
.Pattern "d .?d*(?[元塊])"
For Each Rng In Range("B2", Cells(, "B").End(xlUp))
Set mat .Execute(Rng)
For Each m In mat
y y m * 1
Next
(0, 1) y: y 0
Next
End With
End Sub
```
4. 零寬斷言的格式:?...
上述代碼中包含一個(gè)正向零寬斷言,即“.?d*(? [元塊])”。這個(gè)斷言用于匹配所有以“元”或“塊”結(jié)尾的數(shù)字,并將它們相加得到總金額。其中,“.”匹配任意字符,“?”表示可選,“*”表示零個(gè)或多個(gè),“(? [元塊])”表示匹配后面跟著“元”或“塊”的字符。
5. 運(yùn)行代碼
在VBA窗口中,點(diǎn)擊【運(yùn)行】按鈕,就可以看到“總金額”被瞬間求出啦!這樣,我們就成功地利用正向零寬斷言完成了Excel表格中的金額求和計(jì)算。