excel ubound(Excel 宏的制作)

本文目录
Excel 宏的制作
用字典法,效率高,代码见下。
PS:
1、原工作表名为“原数据”
2、对原数据按日期先排序
3、新建一工作表,用于存储新数据,表名“新数据”
宏代码:
Sub newdata()
Dim crr()
set d = CreateObject("scripting.dictionary")
arr = Sheets("原数据").UsedRange.Value
For i = 1 To UBound(arr, 1)
If d.exists(arr(i, 1)) Then
d(arr(i, 1)) = d(arr(i, 1)) & "|" & arr(i, 2) & "|" & arr(i, 3)
Else
d(arr(i, 1)) = arr(i, 1) & "|" & arr(i, 2) & "|" & arr(i, 3)
End If
Next
arr = d.items
ReDim crr(UBound(arr), 0)
For i = 0 To UBound(arr)
brr = Split(arr(i), "|")
ReDim Preserve crr(UBound(arr), Application.WorksheetFunction.Max(UBound(brr), UBound(crr, 2)))
For j = 0 To UBound(brr)
crr(i, j) = brr(j)
Next
Next
Sheets("新数据")..Resize(UBound(crr, 1) + 1, UBound(crr, 2) + 1) = crr
End Sub
请问excelVBA中怎样实现
考虑到字典KEY值具有唯一性的去重功能,现提供一个字典的解决方案,希望对您有帮助。如果只是有个工作表,而不是多个工作簿或工作表需要循环操作的话,直接用数据透视表或分类汇总等更加便捷,或者也可以用INDEX+IF+SMALL这个万金油公式来解决。
Sub jisuan()
Dim arr, d
Dim i&, j&, k&
arr = 列数据赋值给变量arr
Set d = CreateObject("Scripting.Dictionary") ’创建字典
For i = 1 To UBound(arr) ’A列型号值遍历
temp = arr(i, 1) ’型号值
If Not d.exists(temp) Then ’如果字典中不存在Temp这个KEY值,则执行
d(temp) = arr(i, 2) ’型号值与对应的数量 arr(i, 2) 建立条目对
Else
d(temp) = d(temp) + arr(i, 2)
End If
Next i
.ClearContents ’D:E列清除原数据,为存放结果准备
.Resize(d.Count, 1) = WorksheetFunction.Transpose(d.keys)
.Resize(d.Count, 1) = WorksheetFunction.Transpose(d.items)
End Sub
Excel用公式怎么实现对数据的快速获取
Option Explicit
Sub 宏1()
Dim arrA, arrD, iA, iD
’如果C列有内容,下面的两行需要修改为具体范围
arrA = Range("a1").CurrentRegion ’AB两列的有效数据
arrD = Range("d1").CurrentRegion ’DE两列的有效数据
For iD = 1 To UBound(arrD)
For iA = 1 To UBound(arrA)
If Abs(arrA(iA, 2) - arrD(iD, 2)) 《 0.2 Then
arrD(iA, 1) = arrA(iA, 1)
Exit For
End If
Next iA
Next iD
’结果填表
Range("d1").CurrentRegion = arrD
End Sub
EXCEL 嵌套循环宏语句
这样试试吧
Sub 测试()
Dim n As Integer
Dim i As Integer
Dim a As Integer
a = 1
For n = 1 To 3
For i = 1 To 3
Cells(a, 1) = "X" & n
Cells(a, 2) = "Y" & i
a = a + 1
Next i
Next n
End Sub

更多文章:
知名女星孙侨璐于跨年夜,心梗猝死,年仅25岁!一一一写给年轻人?1月2日演员孙侨潞离世,说好的来日方长转眼就是别离
2026年10月15日 10:40
avantage怎么设置为中文(Avantage安装丢失GIT)
2026年10月15日 03:00
activex控件未注册怎么办(登陆视频监控网页时提示activex控件未注册,怎么解决)
2026年10月14日 20:30







