由于 VBA 与 Excel 是耦合的,所以还是先看表:

件数的计算,用 Mod 即可。但考虑到要求码洋、数量等多种需求,就该 VBA 登场了。代码如下:

'================================================================
' Count (c) 2014 by x01
'-------------------------
' 计算每行的整件数和码洋
'
' 参数:
' sheet: 所选的表。
' numPerBag: 每件的数量。
' startRow: 开始的行数。
' endRow: 结束的行数。
'================================================================
Public Sub Count(sheet, numPerBag, startRow, endRow)
For i = startRow To endRow
If Application.WorksheetFunction.IsNumber(sheet.Cells(i, 4)) Then
If Trim(sheet.Cells(i, 1)) <> "合计" Then
'通过定价选择行数
'If 15# = sheet.Cells(i, 3) Then
'计算每行整包
sheet.Cells(i, 6) = CStr(Int(sheet.Cells(i, 4) / numPerBag)) & "件+" & CStr(sheet.Cells(i, 4) Mod numPerBag) '计算每行码洋
sheet.Cells(i, 5) = sheet.Cells(i, 3) * sheet.Cells(i, 4)
'End If
End If
End If
Next
Debug.Print CStr(startRow) & " - " & CStr(endRow)
End Sub '=================================================================
' SumCol (c) 2014 by x01
'-----------------------
' 计算列的合计数,如数量合计,码洋合计等。
'
' 参数:
' sheet: 所选的表。
' col: 指定的列。
' startRow: 开始的行数。
' endRow: 结束的行数。
'=================================================================
Public Sub SumCol(sheet, col, startRow, endRow)
Dim result As Double
result = 0
For i = startRow To endRow
If Application.WorksheetFunction.IsNumber(sheet.Cells(i, col)) Then
If Trim(sheet.Cells(i, 1)) <> "合计" Then
If 23# = sheet.Cells(i, 3) Then
result = result + sheet.Cells(i, col)
End If
End If
End If
Next Debug.Print CStr(result)
End Sub

在表中,如果有多个发货清单,该宏具有很好的穿透能力,使用起来还是挺方便的。使用方法如下:

1. 仿照 Excel 表的 列 新建一 Excel 表。

2. 按 Atl + F11 快捷键,在显示窗口中插入模块,将上面代码复制到模块中。

3. 在命令窗口中输入类似如下命令并回车即可:

Count Sheet1,30,1,200

x01.Excel: 合计件数的更多相关文章

  1. Lodop Web打印插件使用

    <object id="LODOP_OB" classid="clsid:2105C259-1E0C-4534-8141-A753534CB4CA" st ...

  2. 搜素表脚本.vbs

    Set oFso = CreateObject("Scripting.FileSystemObject")dim path(30)dim name(30)'说明书表头有15列:补丁 ...

  3. kartik\grid\GridView 合计,多选,导出excel,header修改 等方法集合!

    先上完整demo 具体的以后再说 <?php //use yii\web\View; use kartik\grid\GridView; use yii\bootstrap\Html; use ...

  4. 对FineU框架Grid多表头合计行导出Excel的回顾

    年前用FineUI开发遇到了这样一个问题,Grid多表头合计行不能导出,后面到官方示例找了一下,庆幸的是找到了多表头的导出示例.然后当时为了省事,直接就复制粘贴完事,也没有仔细的研究代码.后来运行一看 ...

  5. Winform DataGridView控件数据导出EXcel

    /// <summary> /// 导出Excel /// </summary> /// <param name="dgv"></para ...

  6. x01.ExcelHelper: NPOI 操作

    Excel 操作,具有十分明显的针对性,故很难通用,但这并不妨碍参考后以解决自己的实际问题. 有一汇总表如下: 当然,只是示范,产品的代码应该唯一!现在要根据此汇总表产生各个客户的产品清单.由于客户较 ...

  7. (后端)如何将数据库的表导出生成Excel?

    1.如何通过元数据拿到数据库的信息? 2.如何用Java生成Excel表? 3.将数据库中的表导出生成Excel案例 如何通过元数据拿到数据库的信息 元数据:描述数据的数据 Java中使用元数据的两个 ...

  8. Excel函数sumproduct应用案例-多条件求和

    作者:iamlaosong 越来越认为sumproduct这个函数实用,过去用sum组函数.改起来复制起来都麻烦,sumif在条件多的时候也认为不方便. 如今改用sumproduct函数,就简单多了. ...

  9. NPOI操作EXCEL(六)——矩阵类表头EXCEL模板的解析

    哈哈~~~很高兴还活着.总算加班加点的把最后一类EXCEL模板的解析做完了... 前面几篇文章介绍了博主最近项目中对于复杂excel表头的解析,写得不好,感谢园友们的支持~~~ 今天再简单讲诉一下另一 ...

随机推荐

  1. No.014:Longest Common Prefix

    问题: Write a function to find the longest common prefix string amongst an array of strings. 官方难度: Eas ...

  2. 习题: codevs 2492 上帝造题的七分钟2 解题报告

    这道题是受到大犇MagHSK的启发我才得以想出来的,蒟蒻觉得自己的代码跟MagHSK大犇的代码完全比不上,所以这里蒟蒻就套用了MagHSK大犇的代码(大家可以关注下我的博客,友情链接就是大犇MagHS ...

  3. CI框架源码阅读笔记3 全局函数Common.php

    从本篇开始,将深入CI框架的内部,一步步去探索这个框架的实现.结构和设计. Common.php文件定义了一系列的全局函数(一般来说,全局函数具有最高的加载优先权,因此大多数的框架中BootStrap ...

  4. Guava学习笔记:Immutable(不可变)集合

    不可变集合,顾名思义就是说集合是不可被修改的.集合的数据项是在创建的时候提供,并且在整个生命周期中都不可改变. 为什么要用immutable对象?immutable对象有以下的优点: 1.对不可靠的客 ...

  5. 在Hyper-V上安装配置Windows负载均衡NLB

    搭建过程 Hyper-V 是自Windows Server2008 以来提供的虚拟机管理软件,它操作简便,功能也不错,可以方便的在它里面安装各种操作系统,如图所示: 现在,想利用这几台虚拟服务器搭建一 ...

  6. JAVA中的GC机制详解

    优秀Java程序员必须了解的GC工作原理 一个优秀的Java程序员必须了解GC的工作原理.如何优化GC的性能.如何与GC进行有限的交互,因为有一些应用程序对性能要求较高,例如嵌入式系统.实时系统等,只 ...

  7. Chance – 功能强大的 JavaScript 随机数生成类库

    Chance 是一个基于 JavaScript 的随机数工具类.可以生成随机数字,名称,地址,域名,邮箱,时间等等,几乎网站中使用的任何形式的内容都能够生成.这个随机数工具可以帮助减少单调的测试数据编 ...

  8. Java2_java入门时的一些基本概念的理解(j2ee,j2se,j2me,jdk,sdk,jre,jvm,跨平台)

    什么是SDK呢? Software Develop Kit的简称,顾名思义就是软件开发包.软件开发商实现底层模块,并对其进行类库封装,配置成高级别的开发环境,为程序员上层的程序开发提供支持.譬如Goo ...

  9. Ajax中get和post使用问题

    使用get遇到的问题: 1.问题一. 缓存:当每次访问的url相同,客户端直接读取本地缓存里面的内容,即使后台数据变化前台也不会有变化: 解决方法:在?后面链接一个num=[随机数Math.rando ...

  10. pqgrid对json数据的绑定

    $(function () { var data = [[1, 'Exxon Mobil', '339,938.0', '36,130.0'], [2, 'Wal-Mart Stores', '315 ...