2025-06-27 11:31:58
请问如何使用,能不能发个具体操作步骤截图给我?在Excel中VBA宏代码是以sub开头的,如果建一个宏然后贴代码进去,关掉代码窗口就找不到代码了……
例如在sheet1表中使用。打开vb编辑器,双击左上部“工程”下的“sheet1”,把代码复制到右边的代码窗口中即可
使用:每次当你在“sheet1”表的A列中输入值后,代码会自动执行,在B列中生成结果
2025-06-27 12:44:00
嗯,这个可以做成一个数据表,但A列的数不是一个定值,B列的数据是一个引用的数据。
那VBA代码是怎么样的?求详解,谢谢
假设你sheet2的A、B列放的是你的对应表
sheet1的你填写显示的表
代码:
Sub test()
Dim ends%, rng As Range, ends1%, arr, i%
Sheet1.Range("b:b").ClearContents
ends2 = Sheet2.Cells(Rows.Count, "a").End(xlUp).Row
arr = Sheet2.Range("a1:b" & ends2)
ends = Sheet1.Cells(Rows.Count, "a").End(xlUp).Row
For Each rng In Sheet1.Range("a1:a" & ends)
ends1 = Sheet1.Cells(Rows.Count, "b").End(xlUp).Row
If ends1 = 1 Then
For i = 1 To UBound(arr)
If rng = arr(i, 1) Then
Sheet1.Cells(ends1, 2).Resize(rng * 1) = arr(i, 2)
End If
Next
Else
For i = 1 To UBound(arr)
If rng = arr(i, 1) Then
Sheet1.Cells(ends1 + 1, 2).Resize(rng * 1) = arr(i, 2)
End If
Next
End If
Next
End Sub
能不能发个测试截图给我,我用宏代码测试不成功