Vba注释
vba吧
全部回复
仅看楼主
level 1
求注释以下代码,前面的看懂了,就是把数据放入字典,后面的是啥意思啊?只会简单的匹配小白。能解释通俗点。谢谢大神[乖]
Option Explicit
Private Sub Worksheet_Change(ByVal Target As Range)
Dim arr
Dim i
Dim d As Object
Dim Rng1 As Range
arr = Worksheets("咖啡因数据源").Range("D1").CurrentRegion
Set d = CreateObject("scripting.dictionary")
For i = 2 To UBound(arr)
d(arr(i, 2)) = arr(i, 3)
Next i
For Each Rng1 In Target
If 网页链接 = 12 Then
If d.exists(Rng1.Value) Then
Rng1.Offset(0, 1).Value = d(Rng1.Value)
Else
Rng1.Offset(0, 1).Value = ""
End If
End If
Next
End Sub
2024年07月09日 14点07分 1
level 6
Option Explicit '强制要求变量声明
Private Sub Worksheet_Change(ByVal Target As Range) '当工作表中的单元格发生更改时触发此过程
Dim arr '声明一个数组变量
Dim i '声明一个整型变量用于循环
Dim d As Object '声明一个对象变量,用于创建字典
Dim Rng1 As Range '声明一个范围变量
arr = Worksheets("咖啡因数据源").Range("D1").CurrentRegion '获取"咖啡因数据源"工作表中以 D1 单元格为起始的整个数据区域,并赋值给数组 arr
Set d = CreateObject("scripting.dictionary") '创建一个新的字典对象,并将其赋值给变量 d
For i = 2 To UBound(arr) '从第 2 行到数组 arr 的最后一行进行循环
d(arr(i, 2)) = arr(i, 3) '将 arr 数组中第 i 行第 2 列的值作为键,第 i 行第 3 列的值作为值放入字典 d 中
Next i
For Each Rng1 In Target '遍历发生更改的单元格范围 Target 中的每个单元格
If m网页链接 = 12 Then '如果某个条件(这里不太明确 m 网页链接 = 12 的具体含义)成立
If d.exists(Rng1.Value) Then '如果字典 d 中存在当前单元格的值作为键
Rng1.Offset(0, 1).Value = d(Rng1.Value) '则在当前单元格右侧一格填入对应的值
Else '如果字典中不存在
Rng1.Offset(0, 1).Value = "" '在当前单元格右侧一格填入空值
End If
End If
Next '结束对 Target 中单元格的遍历
End Sub
2024年07月09日 22点07分 2
谢谢。谢谢,谢谢大佬[乖]
2024年07月10日 00点07分
大神,公式里的A1&A2在 Vba怎么表示啊。目前是字典里数据是A1&A2在一列单元格,而我查找的条件是 A1一列单元格,A2一列单元格。求大神指点
2024年07月15日 09点07分
@粤兔集团CEO range(a1:a2)
2024年07月16日 05点07分
level 1
求助大神把代码变成循环(word),纯小白,求求各位大佬了,500多个表格点不过来[泪]
Sub 选中表格调整()
'
' 选中表格调整 宏
'
'
'设置表格文字为新表格居中样式
Selection.Style = ActiveDocument.Styles("新表格居中")
'设置表格样式为HJ表格
Selection.Tables(1).Style = "HJ表格"
Selection.Tables(1).AutoFitBehavior (wdAutoFitWindow)
Selection.Rows.HeightRule = wdRowHeightAtLeast
Selection.Rows.Height = CentimetersToPoints(0.8)
End Sub
2024年07月10日 09点07分 3
吧务
level 11
用代码 做个循环,循环打开不同的 文件 (或同一个文件 中的不同表格)
2024年07月10日 16点07分 4
1