请高手帮我解释一下这段vba代码

sht As Worksheet
rng,c As Range
With sht
For Each rng In .Range("a2:a" & .[a65530].End(3).Row)
Set c = sh.Columns("a:a").Find(rng)
If Not c Is Nothing And c.Offset(0, 2) = .Name Then
rng.Offset(0, Month(c.Offset(0, 1)) - 1) = c.Offset(0, 3)
End If
Next

sht As Worksheet 定义sht为工作表对象
rng,c As Range 定义rng为变体形变量,c为range对象
With sht 在定义的工作表对象里面执行以下系列语句
For Each rng In .Range("a2:a" & .[a65530].End(3).Row) 在a2:a列最后一个不为空的范围内循环。
Set c = sh.Columns("a:a").Find(rng) 把a:a列rng数据赋值给c
If Not c Is Nothing And c.Offset(0, 2) = .Name Then 如果c不为无内容 和 rng右边第2个单元格的数据等于该工作表对象的名称那么执行下一句,否则退出If循环。
rng.Offset(0, Month(c.Offset(0, 1)) - 1) = c.Offset(0, 3) 获取rng右边第一个单元格的月份数减1作为rng的偏移列数然后偏移后的单元格内写入rng右铡第三个单元格的数据
End If
Next
有点乱,应根据实际数据分析
温馨提示:内容为网友见解,仅供参考
第1个回答  2011-12-16
' Range("J3:J18").Select Charts.Add '添加图标 ActiveChart.ChartType = xlLineMarkers '添加连线 ActiveChart.SetSourceData Source:=Sheets("Sheet4").
相似回答
大家正在搜