返回目录:excel表格制作
例:单元格J4,>10为黄色,<1为红色,介于10-1之间为绿色。
1、先将J4的公式设置完成“J4=G4+H4-I41”
2、选中单元格,点菜单栏“格式”
3、点“条件格式” 设置条件。
4、横向第一个对话框点“单元格数值”,第二对话框输入“小于或等于”,第三个对话框输入制定制的单元格“=L4”,或copy者点伸缩按钮直接选定此单元格。
5、点“格式”--“图案”选红色--“确定”。6、再点“添加”,第二对话框输入“介于”,第三个对话框输入制定制的单元格“=L4”,点“格式”--“图案”选鲜绿色--“确定”。
7、同5,再点“添加”,第二对话框输入“大于或等于”,第三个对话框输入制定制的单元格“=K4”,点“格式”--“图案”选黄色--“确定”。
8、全部输完后,点“确定”。
9、如果要复制,直接将鼠标放在J4右下方拖动十字标即可。
注意:
1、这个表格包含了安全存量,比较完整,输入数值,表格颜色会根据计算结果自动变化。
2、输入引用值时,是相对引用,不能是绝对引用(第三个对话框输入指定值的单元格“=K4”前面zd不能带“$”号,那是绝对引用,否则你复制的公式全部是根据第一行数值得出的结果)
这是一张进货表,采用一键导入数据库方式。
Private Sub CommandButton1_Click()
'从数据库读取供应商名称,写入名称管理器的供应商名称
'从数据库读取客户代号,写入名称管理器的客户代号
Dim rsT As New ADODB.Recordset
Dim Conn As ADODB.Connection
Dim myData As String
'Dim Arr As Object
'连接数据库
myData = ThisWorkbook.Path & "\acjxc.accdb"
Set Conn = CreateObject("ADODB.Connection") '这属于后期绑定
Conn.ConnectionString = "Provider=Microsoft.ACE.OLEDB.12.0;Data Source=" & myData
Conn.ConnectionString = Conn.ConnectionString & ";Jet OLEDB:Database Password = gpflovezx@1980"
Conn.Open
'读取供应商清单
sqL = "SELECT 供应商名称 FROM GYSQD "
rsT.Open sqL, Conn, adOpenKeyset, adLockOptimistic
If rsT.RecordCount = 0 Then
MsgBox ("供应商清单为空!!!")
rsT.Close
Exit Sub
Else
Arr = rsT.GetRows
End If
rsT.Close
'输出导入结果
Range(Cells(3, 27), Cells(1000, 27)).ClearContents
For i = 0 To UBound(Arr, 2)
Cells(3 + i, 27) = Arr(0, i)
Next i
With ActiveWorkbook.Names("供应商名称")
.Name = "供应商名称"
.RefersToR1C1 = "=进!R3C27:R" & 3 + i & "C27"
.Comment = ""
End With
'读取货号
sqL = "SELECT 货号 FROM CPQD "
rsT.Open sqL, Conn, adOpenKeyset, adLockOptimistic
If rsT.RecordCount = 0 Then
MsgBox ("产品清单为空!!!")
rsT.Close
Exit Sub
Else
Arr = rsT.GetRows
End If
rsT.Close
'输出导入结果
Range(Cells(3, 28), Cells(1000, 28)).ClearContents
For i = 0 To UBound(Arr, 2)
Cells(3 + i, 28) = Arr(0, i)
Next i
With ActiveWorkbook.Names("货号")
.Name = "货号"
.RefersToR1C1 = "=进!R3C28:R" & 3 + i & "C28"
.Comment = ""
End With
'读取客户代号
sqL = "SELECT 客户代号 FROM KHQD "
rsT.Open sqL, Conn, adOpenKeyset, adLockOptimistic
If rsT.RecordCount = 0 Then
MsgBox ("客户清单为空!!!")
rsT.Close
Exit Sub
Else
Arr = rsT.GetRows
End If
rsT.Close
'输出导入结果
Range(Cells(3, 29), Cells(1000, 29)).ClearContents
For i = 0 To UBound(Arr, 2)
Cells(3 + i, 29) = Arr(0, i)
Next i
With ActiveWorkbook.Names("客户代号")
.Name = "货号"
.RefersToR1C1 = "=进!R3C29:R" & 3 + i & "C29"
.Comment = ""
End With
End Sub
这是导入数据库的代码
通过 excel+access+vba 实现小e68a84e8a2ade799bee5baa6364企业的进销存管理系统
1、将仓库物料逐一对应编码,输入编百码表
其中流水账中的名称、规格、单位等,我们基于已经制作好的”编码表“用函数代入,使其更随编码表的度更新而更新。
如图,只需在A列中输入问编码,excel就好自动代入名称、规格、单位等,没有的就N/A表示答
在B2中输入:
- =VLOOKUP(A2,编码表!A$2:B$1000,2,FALSE)
- =VLOOKUP(A2,编码表!A$2:C$1000,3,FALSE)
- =VLOOKUP(A2,编码表!A$2:D$1000,4,FALSE)
3、打开”库存表”
首权先参考第二步的方法,在B2、C2、D2中输入公式,然后进行以下操作:
在E2中输入:
- =SUMIF(流水账!$A:$A,A2,流水账!$H:$H)
- =SUMIF(流水账!$A:$A,A2,流水账!$I:$I)
- =IF(F2="",编码表!E2+E2,编码表!E2+E2-F2)
即可
才50多个单品,完全可以用EXCEL实现的;
建议建立存货档案,把公司所有的物料明细列出来(如zd规格\型号\计量单位\等统一)再回附上编码,日常物料跟踪用附上产品编码.仓库收发存表,用刚建立好的存货档案,结合,index+match、sumif,基本可以实现你的需求;收发存模板有的,可以留下油箱答,转你你。