zoukankan      html  css  js  c++  java
  • 利用VBA查找excel中一行某列第一次不为空与最后一列不为空的列数

    昨日同事有需求,想知道每个商品第一次销售的月份,以及最后一次销售的月份. 本想通过什么excel函数来解决,但是找了半天也没找到合适的,最后还是通过VBA来解决吧.

    使用方法:

    Excel工具-宏-Visual Basic编辑器 在左侧栏中点右键,

    插入-模块

    然后输入:


     1 Function Last0(ByVal Int_Row As Integer) As Integer
     2     Last0 = 14
     3     Do While Cells(Int_Row, Last0) = "" And Last0 >= 3
     4         Last0 = Last0 - 1
     5     Loop
     6 
     7 End Function
     8 
     9 '这里需要注意的是 函数的返回值貌似是 变量必须与方法名一致 很奇葩的要求....
    10 Function Frist0(ByVal Int_Row As Integer) As Integer
    11     Frist0 = 3
    12     Do While Cells(Int_Row, Frist0) = "" And Frist0 <= 255
    13         Frist0 = Frist0 + 1
    14     Loop
    15     If Frist0 > 255 Then
    16         Frist0 = 8888
    17     End If
    18 End Function

    然后在单位格中可以直接引用

    例如:=Frist0(4) 返回值即为4行中第一个不为0的单元格列号,

    如果函数返回8888,表明这行没有数据。

  • 相关阅读:
    Struts2框架
    读者写者问题
    哲学家就餐问题
    理解中断
    理解处理机调度
    理解死锁
    理解进程
    Linux CentOS 6.7 挂载U盘
    家庭-养老院模型理解IOC和DI
    Bash基础
  • 原文地址:https://www.cnblogs.com/xinzhyu/p/4258940.html
Copyright © 2011-2022 走看看