Rain328 2021-07-06 10:14 采纳率: 0%
浏览 25

利用VBA为指定区域进行计算,超出设定值变换单元格格式

A列和B列数据类型均为日期(mm/dd/yyyy),A类为任务下达日期,B列为任务完成日期。A列数据无空值,B列中可能存在有空值,若为空值则需替换该单元格为当前系统日期。
若B列-A列>=7,则A列该单元格背景色变为红色。
目前不太清楚怎么定义A列与B列的数据类型,以及怎样计算,请大神解答,十分感谢

img

  • 写回答

1条回答 默认 最新

  • 虫鸣@蝶舞 2023-06-18 23:12
    关注

    请参考如下代码

    sub mt7d()
    dim a as range
    dim b as range
    dim d1 as date
    dim d2 as date
    dim daydiff as long
    
    for i = 184 to 217
       with sheet1
          if .cells(i,12).value = "" then 
             .cells(i,12).value = Date
          end if
          d1 = .cells(i,10).value
          d2 = .cells(i,12).value
          daydiff = DateDiff("d",d1,d2)
          if daydiff >= 7 then
              .cells(i,10).Interior.ColorIndex = RGB (192,0,0)
          end if
       end with
    next i
    
    评论

报告相同问题?

悬赏问题

  • ¥15 求差集那个函数有问题,有无佬可以解决
  • ¥15 MATLAB动图问题
  • ¥15 【提问】基于Invest的水源涵养
  • ¥20 微信网友居然可以通过vx号找到我绑的手机号
  • ¥15 寻一个支付宝扫码远程授权登录的软件助手app
  • ¥15 解riccati方程组
  • ¥15 display:none;样式在嵌套结构中的已设置了display样式的元素上不起作用?
  • ¥15 使用rabbitMQ 消息队列作为url源进行多线程爬取时,总有几个url没有处理的问题。
  • ¥15 Ubuntu在安装序列比对软件STAR时出现报错如何解决
  • ¥50 树莓派安卓APK系统签名