如何使用EXCEL宏命令实现自动计算功能

在应收单元格自动识别数量如小于5台则为单价,如大于5台则显示应收为台数综合乘以单价;应付单元格显示重量单元格小于5则为最低收费,如大于5则为最低收费+((重量单元格-5)*续重)

第一步:将续重、单价建立名称。如图:

第二步:在B2输入公式:=IF(A2<=5,单价,单价+(A2)*续重) 如图:

第三步:将B2公式下拉至B6.结果如图:

追问

是想分两步计算,第一步,A列相同的单号下B列数量总和小于5则E列显示D列数值,大于5则E列显示A列单号下B列的总和乘以D列,第二部,A列想通的单号下C列数量小于5则H列显示F列数值,大于5则H列显示F列+((C列-5)*G列)

追答

加我好友吧,加了好友具体聊

追问

您好,我想要两个数值结果,第一个是U列的数值,E列相同的单号下K列数量总和小于5则T列显示U列数值,大于5则T列显示E列相同单号下K列的总和乘以S列,第二个是W列的数值,E列相同的单号下L列重量数值小于5则W列显示U列数值,大于5则W列显示U列+((L列-5)*V列)

温馨提示:答案为网友推荐,仅供参考
第1个回答  2019-05-20
写程序要行号和列号,这张截图看不到,假设指令号在A1单元格。
sub test()
dim i&,j&,h&,x&
h=cells(rows.count,6).end(3).row
for i=2 to h
if cells(i,6)<5 then

cells(i,10)=cells(i,9)

else

cells(i,10)=cells(i,6)*cells(i,9)

end if

x=i

if cells(i,7)="" then

do until cells(x,7)<>""

x=x-1

loop

end if
if cells(x,7)<5 then

cells(x,13)=cells(x,11)

else

cells(x,13)=cells(x,11)+(cells(x,7)-5)*cells(x,12)

end if

next
end sub追问

大神,分别在U列和W列自动计算,帮忙写个程序

第2个回答  2019-05-20
虽然不会解决这个问题,但是建议数据库不要用合并单元格,可以填一样的数值
第3个回答  2019-05-20
问的不是很清楚,初步判断,if(a1<5,单价,台数综合乘以单价,if(重量<5,最低收费,最低收费+(重量-5)*续重。可能你也看不懂,因为我也看不懂。建议上实图!
相似回答