用VBA语言获取其他工作表中的数据

Excel中的格式刷、自动填充等功能可以帮助我们完成大量的重复工作,但是也有一些重复工作又比较不规律,这是我们可以借助VBA语言进行批量处理。 

如下表,我们想按照工作表““OA线路衰耗””填写工作表“线路衰耗统计”:

《用VBA语言获取其他工作表中的数据》

要抽取的数据在另一个表格内,就要结束方法sheets():

Sub For_tongji()
    Dim str1 As String
    Dim str2 As String
    Dim index As Integer
    Dim cha As Integer
    cha = 20                    '算好两表格差值
    For i = 194 To 242 Step 2
        If i > 242 Then
            Exit For
        End If
		'预设一个值,区分是否是OTM站
        If Sheets("OA线路衰耗").Range("H" & (i + 1)) = 0 Then               
str1 = Sheets("OA线路衰耗").Range("B" & i)          '获取上游站名字
            str2 = Sheets("OA线路衰耗").Range("B" & (i + 2))    '获取下游站名字
            Range("B" & (i - cha)).Value = str1 + "-" + str2
            Range("D" & (i - cha)).Value = str1 + "→" + str2
            Range("D" & (i - cha + 1)).Value = str2 + "→" + str1
        Else
            str1 = Sheets("OA线路衰耗").Range("B" & i)
			'OTM站重复,加4跳过重复单元格
            str2 = Sheets("OA线路衰耗").Range("B" & (i + 4))   
            Range("B" & (i - cha)).Value = str1 + "-" + str2
            Range("D" & (i - cha)).Value = str1 + "→" + str2
            Range("D" & (i - cha + 1)).Value = str2 + "→" + str1
            cha = cha + 2   '两表单元格之间差值加2
            i = i + 2   '跳过重复的OTM站
        End If
    Next i
End Sub
'加VX:tim_mz1234,帮你写VBA语言程序

然后点击运行,就自动填写好了

《用VBA语言获取其他工作表中的数据》

    原文作者:Stack_mz
    原文地址: https://blog.csdn.net/Stack_mz/article/details/81297659
    本文转自网络文章,转载此文章仅为分享知识,如有侵权,请联系博主进行删除。
点赞