Excel精英培训网

 找回密码
 注册
数据透视表40+个常用小技巧,让你一次学会!
查看: 1522|回复: 11

[已解决]大神给段代码 自动计算金额的代码

[复制链接]
发表于 2022-7-7 14:40 | 显示全部楼层 |阅读模式
自动计算金额.zip (302.76 KB, 下载次数: 22)
excel精英培训的微信平台,每天都会发送excel学习教程和资料。扫一扫明天就可以收到新教程
发表于 2022-7-7 15:25 | 显示全部楼层
附件都不上一个,让别人帮你写代码还要让别人帮你做模拟表格?
回复

使用道具 举报

发表于 2022-7-7 16:24 | 显示全部楼层
回复

使用道具 举报

 楼主| 发表于 2022-7-7 17:05 | 显示全部楼层
lh6972338 发表于 2022-7-7 15:25
附件都不上一个,让别人帮你写代码还要让别人帮你做模拟表格?

上了呀  最上面呀
回复

使用道具 举报

发表于 2022-7-7 21:12 | 显示全部楼层
  1. Sub marco()
  2. Set Source = Range("J1:J" & Range("A2").End(xlDown).Row)
  3. For I = 1 To Source.Rows.Count
  4.     dwRow = Source(I, 1).Row
  5.     Select Case Source(I, 1).Value
  6.         Case "御墅"
  7.             Range("Q" & dwRow) = Range("F" & dwRow)
  8.         Case "赛奥"
  9.             Select Case Range("G" & dwRow).Value
  10.                 Case "奥德普", "西泰", "立诺"
  11.                 Range("Q" & dwRow) = Range("F" & dwRow) * 1.1
  12.                 Case Else
  13.                 Range("Q" & dwRow) = Range("F" & dwRow) * 1.02
  14.             End Select
  15.     End Select
  16. Next
  17. End Sub

复制代码
回复

使用道具 举报

 楼主| 发表于 2022-7-8 10:05 | 显示全部楼层

请教大神,Q列计算结果只到第14行  试了几个都一样 计算到14行 15行开始没有计算结果

回复

使用道具 举报

发表于 2022-7-8 10:18 | 显示全部楼层
本帖最后由 我行我速2008 于 2022-7-8 10:32 编辑

试试看!!!!

计算金额代码(20220708).rar

148.34 KB, 下载次数: 5

回复

使用道具 举报

发表于 2022-7-8 10:24 | 显示全部楼层    本楼为最佳答案   
本帖最后由 我行我速2008 于 2022-7-8 10:30 编辑

Sub 计算()
    Dim Ar, R%
    With Sheets("订单汇总表")
        Ar = .Cells(1, 1).CurrentRegion
        For R = 2 To UBound(Ar)
            If Ar(R, 10) = "御墅" Then
                Ar(R, 17) = Ar(R, 6)
            ElseIf Ar(R, 10) = "赛奥" And Ar(R, 7) = "奥德普" Or Ar(R, 7) = "西泰" Or Ar(R, 7) = "立诺" Then
                Ar(R, 17) = Application.Round(Ar(R, 6) * 1.1, 2)
            Else
                Ar(R, 17) = Application.Round(Ar(R, 6) * 1.02, 2)
            End If
        Next R
        .Cells(1, 1).CurrentRegion = Ar
    End With
End Sub
回复

使用道具 举报

发表于 2022-7-8 10:36 | 显示全部楼层
当J客户列为御墅则Q列复制F列的金额,
当J列客户为赛奥,那么供应商为奥德普、西泰、立诺则Q列金额为F列*1.1,不是这三个供应商的F列*1.02


这个要求不严谨,没说清客户不是御墅或赛奥应如何计算。
回复

使用道具 举报

 楼主| 发表于 2022-7-8 10:43 | 显示全部楼层
我行我速2008 发表于 2022-7-8 10:36
当J客户列为御墅则Q列复制F列的金额,
当J列客户为赛奥,那么供应商为奥德普、西泰、立诺则Q列金额为F列*1 ...

感谢大神赐教,客户列只有两种情况 如有其它情况会手工操作
您的代码我试了下 单独运行是没有问题,但是为啥和我其它的代码凑在一块就出现只运算到第14行,15行的Q列开始没有计算了,这是为啥?
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|手机版|Archiver|Excel精英培训 ( 豫ICP备11015029号 )

GMT+8, 2024-4-28 23:51 , Processed in 0.403356 second(s), 10 queries , Gzip On, Yac On.

Powered by Discuz! X3.4

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表