如图,工作簿中有两个表,【数据表】里面存储了仓库里存放模具的相关数据,【查询】就是一个简易的数据查询界面,里面两个文本框一个按钮,需要实现的功能如下:
在两个文本框中分别输入模具的“长度”和“宽度”,点击按钮,系统就会查询出符合条件( 长度-1<=长度<=长度+1 & 宽度-1<=宽度<=宽度+1 )的结果并把它显示在下面的表格中,查询出的结果和输入的数值完全匹配的,就填充浅绿色背景以突出显示(如图)。
求附有注释的代码,谢谢
提问者不能上传文件?
做好的工作簿在这里,就缺代码
http://pan.baidu.com/s/1jHseMDS
1、以商场2015年第一季度电器销售统计为例子,“产品”、“品牌”、“月份”3个条件的销售额进行查询。
2、假设要查询“康佳”的“1月”份“各类家电”的销售额,先建一个对应列的工作簿。如图,输入条件1:“成品名称”,条件2:“品牌名称”,条件3:“月份”,
3、下面到了建立宏的步骤:单击菜单栏中的“开发工具”——插入——表单控件——按钮,在出现的十字箭头上拖住画出一个按钮,如图所示。
4、在弹出的查找红对话框中选择“录制”,在弹出的“录制新宏”对话框中,修改宏名称为“查找”,单击确定。
5、单击“开发工具”——查看代码,打开VBA编辑器,如图所示。
6、在VBA编辑器点击插入-模块,如图,
7、现在来输入代码:
Sub 查找()
Dim i As Integer, j As Integer
arr1 = Sheets("数据").Range("A2:D" & Sheets("数据").Cells(Rows.Count, "A").End(xlUp).Row)
arr2 = Sheets("查找").Range("A2:D" & Sheets("查找").Cells(Rows.Count, "A").End(xlUp).Row)
For i = 1 To UBound(arr2)
For j = 1 To UBound(arr1)
If arr2(i, 1) = arr1(j, 1) And arr2(i, 2) = arr1(j, 2) And arr2(i, 3) = arr1(j, 3) Then
arr2(i, 4) = arr1(j, 4)
GoTo 100
End If
Next
arr2(i, 4) = ""
100:
Next
Sheets("查找").Range("A2:D" & Sheets("查找").Cells(Rows.Count, "A").End(xlUp).Row) = arr2
End Sub
8、现在回到EXCEL表格,右击按钮,选择“编辑文字”,修改按钮名称为“统计”。
9、那么就完成了。
VBA里满足IF多条件
1. 当你需要检查A1等于1且A2等于2时,可以使用如下VBA代码:Sub IfTest()' 定义一个函数 ' 如果A1等于1且A2也等于2 If Range("A1") = 1 And Range("A2") = 2 Then Selection = Range("A3") ' 将满足条件的结果赋值给选中的单元格 Else Selection = Range("A4") ' 否则,使用默认值...
EXCEL如何用VBA实现多条件查询数据?
1、以商场2015年第一季度电器销售统计为例子,“产品”、“品牌”、“月份”3个条件的销售额进行查询。2、假设要查询“康佳”的“1月”份“各类家电”的销售额,先建一个对应列的工作簿。如图,输入条件1:“成品名称”,条件2:“品牌名称”,条件3:“月份”,3、下面到了建立宏的步骤:单击菜单...
excel用函数进行多条件计数的问题
在第一个表格的一侧插入透视表,按照职称统计一下。然后,在新排版的表格里应用VLookUp函数对应职称查询统计数量。方法二:对付十分复杂多条件混合多平台多文件的统计,用编程方式,VBA真正把上面第一个作为数据源,举例,假如我要结合远程SQL Server表去查询统计,那就要使用VBA了。
EXCEL通过VBA多条件查找怎样写?
Sub 查找()Dim i As Integer, j As Integer arr1 = Sheets("档案").Range("A1:D" & Sheets("档案").Cells(Rows.Count, "A").End(xlUp).Row)arr2 = Sheets("寻找").Range("A1:D" & Sheets("寻找").Cells(Rows.Count, "A").End(xlUp).Row)For i = 1 To UBound(arr2)For ...
EXCEL 多条件查找(VBA)
我觉得你这个问题,在A列和B列查找的意思是必须要A列等于200806015,B列等于“甲白班”,然后C列“24#”,最后才返回D列和C列对应行的值。所以应该直接查找C列,然后进行判断就可以了。VBA的语言是这样的:sub chazhao()dim i as integer for i = 1 to 100 if cells(i,3)="24#" and ...
vba多条件查找?
取一个没用的单元格,用VBA设置成Excel的公式,取该单元格的值 示例:你这个公式简单一些,公式中没有双引号,直接将公式原样放到双引号里面就行:Range("G2").Formula="=LOOKUP(1,0\/((A2=Sheet2!D:D)*(I2=Sheet2!H:H)),Sheet2!E:E)"...
excel多个条件筛选的三种方法使用高级筛选函数公式和VBA代码来完成多个...
excel多个条件筛选是数据分析的常见应用。其中可以使用高级筛选多条件字段设置、函数公式、VBA来实现多条件筛选。下面我们以一个案例来介绍excel多个条件筛选的几种方法。第一,用高级筛选多条件完成多个条件筛选 下图是有两张工作表,“表一”是数据源,“表二”如下图。案例要求:筛选“表一”中性别为“...
EXCEL表VBA代码如何实现多条件判断,然后自动备注判断的结果?数据问题如 ...
打开你的Excel文件,按“Alt+F11”打开VBA编辑窗口,然后在左侧双击对应的Sheet,右侧空白处粘贴下面的代码。关闭VBA窗口。然后按“Alt+F8”打开宏窗口,选择刚插入的宏,点击“执行”。Sub tj()Dim d, ADArr, EArrSet d = CreateObject("Scripting.Dictionary")Dim r, i As Longr = Cells(Rows....
玩转Excel-用vba解释Excel的二条件筛选
通过实际操作演示,我们可以轻松在任意单元格中输入此自定义函数,进而实现对数据表中同时基于两个条件的查询。操作直观、快捷,且无需外部编程环境,直接在Excel内部即可完成。总结而言,学习VBA并非仅仅为了掌握一门编程语言,而是在Excel数据处理过程中,能够灵活运用编程思维解决实际问题。无论技术如何发展,...
EXCEL 多种选项条件对应多个结果 怎么用VBA解决?
首先打开excel,按alt+f11,打开vba编辑器,然后插入一个模块,模块内容如下,你照抄过去 Sub A()Dim A#, B#, C#, D#, E#, F#, G#, H#, I#, M#, X#Dim Hang As LongFor Hang = 2 To Range("a1").End(xlDown).Row Step 3 A = Cells(Hang, 1): B = Cells(Hang, 2)...