问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

vba多条件查找供应商?

发布网友 发布时间:2023-05-08 17:27

我来回答

2个回答

热心网友 时间:2023-11-16 17:57

以下是一个可能的例子代码,其中假设条件工序代码在第1列,类产品在第2列,供应商级别在第3列,PPV值在第4列,并且数据的起始行为第2行。您可以根据您的实际情况进行相应的调整和修改。
```VBA
Sub sort_suppliers()
Dim ws As Worksheet
Dim lRow As Long
Dim FoundCell As Range
Dim strSearch As String
Dim sortRange As Range

'设置需要操作的工作表
Set ws = ThisWorkbook.Sheets("Sheet1")

'获取最后一行
lRow = ws.Cells(Rows.Count, 1).End(xlUp).Row

'设置查找参数,如果需要可以将其改动为输入框让用户输入。
Dim cond_GXDM As String
cond_GXDM = "111" '条件工序代码
Dim cond_CPMC As String
cond_CPMC = "产品AB" '类产品
Dim cond_GYSJB As String
cond_GYSJB = "级别A" '供应商级别

'在第一图查找符合条件的单元格,将查找范围*在前三列中
Set FoundCell = ws.Range("A2:A" & lRow).Find(what:=cond_GXDM)
If Not FoundCell Is Nothing Then
Set FoundCell = ws.Range("B" & FoundCell.Row & ":D" & lRow).Find(what:=cond_CPMC & "," & cond_GYSJB)
If Not FoundCell Is Nothing Then
'找到相应行之后,利用Offset函数获取该供应商的PPV值
Set sortRange = FoundCell.Offset(0, 1).Resize(1, 1)
'向下查找并选取符合条件的单元格,将其合并为一区域
Do Until IsEmpty(FoundCell) Or FoundCell.Offset(0, -1) <> cond_GXDM
If FoundCell.Offset(0, 1) = cond_CPMC And FoundCell.Offset(0, 2) = cond_GYSJB Then
Set sortRange = Application.Union(sortRange, FoundCell.Offset(0, 3).Resize(1, 1))
End If
Set FoundCell = ws.Range("B" & FoundCell.Row + 1 & ":D" & lRow).Find(what:=cond_CPMC & "," & cond_GYSJB)
Loop
'按照PPV值从小到大排序
sortRange.Sort key1:=sortRange, order1:=xlAscending, Header:=xlNo
Else
MsgBox "无符合条件的供应商。"
End If
Else
MsgBox "无符合条件的记录。"
End If

End Sub
```
此代码仅供参考,具体操作需要根据您的实际需求进行调整和修改。

热心网友 时间:2023-11-16 17:58

如果使用office2021,可用函数就能解决
FILTER 根据条件筛选多条记录
SORT 对表格进行排序
两个函数,参考下
声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
ups快递客服电话24小时 贷款记录在征信保留几年? 安徽徽商城有限公司公司简介 安徽省徽商集团新能源股份有限公司基本情况 安徽省徽商集团有限公司经营理念 2019哈尔滨煤气费怎么有税? 快手删除的作品如何恢复 体育理念体育理念 有关体育的格言和理念 什么是体育理念 什么是union find算法 河南安阳:10小伙凑6千枚硬币给朋友随份子,你们当地结婚有何讲究?_百 ... 牌桌上的小圆片代表钱的是什么 河南一地要求随礼不超50元,随礼钱都有哪些讲究? 人家结婚办酒桌子下面放钱是什么意思,拾到钱好吗? 河南省规定二百元以上为赌博,是指一把收支二百元,身上带二百元?桌上... 斟忱的网络解释斟忱的网络解释是什么 怎么知道吉他的音色和手感好不好? 丝绸之路的开拓者张骞的经历让你明白了什么 梦见右手中指流了好多血的预兆 梦见右手中指流了很多血的预兆 妖者为王第二部叫什么名字 无线应急灯头上为什么闪绿光 为什么Wifi电源灯变成绿色一闪一闪的,其他灯一个都不亮? 为什么很多夫妻结婚后,会变得很冷淡,没有共同语言? 夫妻感觉很冷淡没话说 中国证交所有哪几个 滚动轴承高速、中速、低速还有重载、轻载怎样区分?有一个具体的临界值... 什么是高速轴承 如何才能让公司网站在百度或谷歌上排名靠前? vba 选择行 战略生存手游《旭日之城》 电脑控制面板上的电源选项中的:最少电源管理是什么意思? ...电脑的电源属性里的电源使用方案&quot;最少电源管理\最大电池模式\一直开... 戴尔笔记本最少电源管理是什么意思 电脑家用电源方案 最少电源方案和最大电源方案有什么区别哪个更省电_百 ... 电脑屏幕保护程序里电源相最小电源管理和最大电池模式是什么意思 电源管理是什么意思,电源管理是什么意思 昆尚高速试通车几号至几号免费? 渝湘复线高速为什么要分两个阶段实通车呢 植物记录卡怎么做啊? 备感和倍感是一个意思吗 备感亲切还是倍感亲切 “备”感振奋 还是 “倍”感振奋 倍感温暖和备感温暖哪个是对的 备感荣幸是什么意思 备感温暖的说法正确吗 吉他琴谱上一些标志是什么意思 生物酶去油王能洗米白色衣服吗 二手车可以补全保险嘛