您現在的位置是:首頁 > 動作武俠首頁動作武俠

如何製作發貨記錄報表模糊查詢,彙總管理,這樣做完美

簡介Rows(xrw)

貨單表格怎麼弄

No。1

由於一些中小企業生產特點,發貨記錄常常很多,那麼對於這樣的商品進行管理,就是一個複雜的問題。

如果使用大型管理軟體,顯然有些浪費,如果用簡單的Excel來管理,又顯得麻煩。

本節將對發貨記錄做一個表格來進行錄入、查詢和彙總進行一個簡單介紹。

如何製作發貨記錄報表模糊查詢,彙總管理,這樣做完美

如下圖所示,整個報表頁面就在一個表中進行。

表中可實現所有資料彙總,業務員單人資料彙總,以及各類關鍵欄位模糊查詢功能。

如果是一個小型加工企業,完全可以解決發貨報表的一些彙總功能,而且只需要對相關欄位進行選擇即可實現。

如何製作發貨記錄報表模糊查詢,彙總管理,這樣做完美

No。2

重點看一下程式碼

Private Sub Worksheet_Change(ByVal Target As range)

On Error Resume Next

If VBA。Len(VBA。Trim(Target。Value)) = 0 Then Exit Sub

Application。ScreenUpdating = False

‘———————————————————— 個人資訊查詢 ————————————————-

If Target。Address = “$H$1” Then

Dim listArr, Lx As Variant, li As Integer

listArr = Array(“L”, “M”, “S”)

li = 0

Dim cell As range

Set cell = ActiveSheet。range(“H3:S3”)

For Each Lx In listArr

Dim iArr, ix As Long, xCount As Long

Dim kArr(0 To 11)

For i = 0 To UBound(kArr)

kArr(i) = 0

Next i

iArr = getYWY(Target。Value, “F”)

If VBA。Len(iArr(0)) = 0 Then

’MsgBox “記錄為空!” ‘沒有記錄

GoTo End001

End If

getKarr iArr, kArr, CStr(Lx)

End001:

If li > 0 Then

Set cell = cell。Item(1)。Offset(1, 0)。Resize(1, cell。Columns。Count)

End If

li = li + 1

cell = kArr

Next Lx

Set cell = Nothing

End If

’———————————————————— 模糊查詢 客戶名稱 ——————————————-

SelectValue Target, “$E$12”, “E”

‘———————————————————— 模糊查詢 業務員 ————————————————-

SelectValue Target, “$F$12”, “F”

’———————————————————— 模糊查詢 合同號 ————————————————-

SelectValue Target, “$G$12”, “G”

‘———————————————————— 模糊查詢 產品名稱 ——————————————-

SelectValue Target, “$H$12”, “H”

’———————————————————— 模糊查詢 開票 ————————————————-

SelectValue Target, “$O$12”, “O”

‘———————————————————— 模糊查詢 開票 ————————————————-

SelectValue Target, “$T$12”, “T”

Application。ScreenUpdating = True

End Sub

上述程式碼存放於Worksheet_Change事件當中,對事件當中的特定單元格進行判斷,本例中如果是“H1”單元格資料改變則執行查詢程式碼。

查詢結果為某個業務員的所有相關資料,結果新增到月份對應表格內。

可以看到程式碼中還使用了一個公共函式SelectValue 函式,函式如下:

Sub SelectValue(tRange As range, selecAddress As String, colStr As String) ’‘查詢

If tRange。Address = selecAddress Then

Dim Hcell As range

Set Hcell = ActiveSheet。range(Cells(14, 1), _

Cells(ActiveSheet。UsedRange。Rows。Count, _

ActiveSheet。UsedRange。Columns。Count))

Hcell。Rows。Hidden = False

Dim xArr

xArr = getSelectStrRows(colStr, VBA。Trim(tRange。Value))

Hcell。Rows。Hidden = True

If VBA。Len(xArr(0)) = 0 Then Exit Sub

For Each xrw In xArr

ActiveSheet。Rows(xrw)。Hidden = False

Next xrw

Set Hcell = Nothing

Erase xArr

End If

End Sub

根據不同的引數,執行不同的模糊查詢欄位,查詢結果將列出所有符合條件的資料條目。

如此便實現了模糊查詢的功能。

如何製作發貨記錄報表模糊查詢,彙總管理,這樣做完美

相對於Excel表格進行資料處理,使用VBA還是有很大的優勢,效率高,使用簡單方便。

如果說缺點,就是維護難。

如果對VBA一點也不瞭解,那麼在後期修改表格的時候,有些VBA程式碼需要進行相應簡單修改,這就是說,一旦編碼完成,最好別再對錶格進行插入或刪除操作,會對整個程式碼造成一些不必要的破壞。

歡迎關注、收藏

---END---

Top