ExcelHome技术论坛

 找回密码
 免费注册

QQ登录

只需一步,快速开始

快捷登录

搜索
EH技术汇-专业的职场技能充电站 妙哉!函数段子手趣味讲函数 Excel服务器-会Excel,做管理系统 效率神器,一键搞定繁琐工作
HR薪酬管理数字化实战 Excel 2021函数公式学习大典 Excel数据透视表实战秘技 打造核心竞争力的职场宝典
让更多数据处理,一键完成 数据工作者的案头书 免费直播课集锦 ExcelHome出品 - VBA代码宝免费下载
用ChatGPT与VBA一键搞定Excel WPS表格从入门到精通 Excel VBA经典代码实践指南
查看: 375|回复: 27

求助大神,从近20日最高、最低销售工作表中取出最高值及对应日期,最低值及对应日期

[复制链接]

TA的精华主题

TA的得分主题

发表于 2024-11-6 20:27 | 显示全部楼层 |阅读模式
求助大神,从近20日最高、最低销售工作表中取出最高值及对应日期,最低值及对应日期,三个工作表中的存货编码是一样的,顺序也是一样的,感谢大神出手相助!!!

image.png image.jpg image.png

取最高最低值及对应的日期.rar

1.73 MB, 下载次数: 8

TA的精华主题

TA的得分主题

发表于 2024-11-6 21:53 | 显示全部楼层
附件供参考。。。

取最高最低值及对应的日期.7z

1.93 MB, 下载次数: 5

评分

1

查看全部评分

TA的精华主题

TA的得分主题

发表于 2024-11-6 21:53 | 显示全部楼层
参与一下。。。

  1. Sub ykcbf()  '//2024.11.6
  2.     Application.ScreenUpdating = False
  3.     Set d = CreateObject("Scripting.Dictionary")
  4.     Set d1 = CreateObject("Scripting.Dictionary")
  5.     arr = Sheets("每日最高(公)").UsedRange
  6.     For i = 2 To UBound(arr)
  7.         s = arr(i, 2)
  8.         For j = 25 To UBound(arr, 2)
  9.             If Not d.exists(s) Then
  10.                 d(s) = Array(arr(i, j), arr(1, j))
  11.             Else
  12.                 t = d(s)
  13.                 t(0) = IIf(t(0) > arr(i, j), t(0), arr(i, j))
  14.                 t(1) = IIf(t(0) > arr(i, j), t(1), arr(1, j))
  15.                 d(s) = t
  16.             End If
  17.         Next
  18.     Next
  19.     arr = Sheets("每日最低(公)").UsedRange
  20.     For i = 2 To UBound(arr)
  21.         s = arr(i, 2)
  22.         For j = 27 To UBound(arr, 2)
  23.             If Not d1.exists(s) Then
  24.                 d1(s) = Array(arr(i, j), arr(1, j))
  25.             Else
  26.                 t = d1(s)
  27.                 t(0) = IIf(t(0) < arr(i, j), t(0), arr(i, j))
  28.                 t(1) = IIf(t(0) < arr(i, j), t(1), arr(1, j))
  29.                 d1(s) = t
  30.             End If
  31.         Next
  32.     Next
  33.     With Sheets("1判每日取数判断(公)")
  34.         r = .Cells(Rows.Count, 1).End(3).Row
  35.         arr = .[a1].Resize(r, 14)
  36.         For i = 2 To UBound(arr)
  37.             s = arr(i, 2)
  38.             If d.exists(s) Then
  39.                 arr(i, 11) = d(s)(0)
  40.                 arr(i, 12) = d(s)(1)
  41.                 arr(i, 13) = d1(s)(0)
  42.                 arr(i, 14) = d1(s)(1)
  43.             End If
  44.         Next
  45.         .[a1].Resize(r, 14) = arr
  46.     End With
  47.     Set d = Nothing
  48.     Application.ScreenUpdating = True
  49.     MsgBox "OK!"
  50. End Sub

复制代码


评分

1

查看全部评分

TA的精华主题

TA的得分主题

发表于 2024-11-6 22:26 | 显示全部楼层

TA的精华主题

TA的得分主题

发表于 2024-11-7 11:47 | 显示全部楼层
image.png
取最值

取最高最低值及对应的日期.zip

1.68 MB, 下载次数: 2

评分

1

查看全部评分

TA的精华主题

TA的得分主题

发表于 2024-11-7 14:50 | 显示全部楼层

TA的精华主题

TA的得分主题

发表于 2024-11-7 14:50 | 显示全部楼层

TA的精华主题

TA的得分主题

 楼主| 发表于 2024-11-8 14:59 | 显示全部楼层

非常感谢大神!现在有个需求,即,编码中带了一个'符号,取数后,这个'符号就不见了,想保留住这个'符号的编码格式,请大神再次出手相助!!!不胜感激!!!

取最高最低值及对应的日期(不改格式).rar

1.92 MB, 下载次数: 2

TA的精华主题

TA的得分主题

发表于 2024-11-8 15:16 | 显示全部楼层
wangchcm 发表于 2024-11-8 14:59
非常感谢大神!现在有个需求,即,编码中带了一个'符号,取数后,这个'符号就不见了,想保留住这个'符号 ...

附件超过2M无法上传,就上个图片吧。

就加一句代码就行。

a478177a-e602-4a55-be11-ca3a37bae390.png

TA的精华主题

TA的得分主题

 楼主| 发表于 2024-11-8 16:31 | 显示全部楼层
ykcbf1100 发表于 2024-11-8 15:16
附件超过2M无法上传,就上个图片吧。

就加一句代码就行。

收到再次感谢大神!现在请再帮看看,我是哪设的不对,最低值取不上了,感谢!!!!!

取最高最低值-最低值取不上.rar

1.77 MB, 下载次数: 1

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

本版积分规则

手机版|关于我们|联系我们|ExcelHome

GMT+8, 2024-11-13 14:40 , Processed in 0.052158 second(s), 12 queries , Gzip On, MemCache On.

Powered by Discuz! X3.4

© 1999-2023 Wooffice Inc.

沪公网安备 31011702000001号 沪ICP备11019229号-2

本论坛言论纯属发表者个人意见,任何违反国家相关法律的言论,本站将协助国家相关部门追究发言者责任!     本站特聘法律顾问:李志群律师

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