多个工作表里的相同列进行比较选出最小值按工作表名称显示在新的工作里怎么操作?

如题所述

第1个回答  2016-10-27
用VBA编程可以实现,可以发一个样表,并举例说明详细需求。追问

我想要的就是把sheet1到sheet3等多个表里的相同列数据相同单元格进行大小比较 最小值以sheet1/sheet2/sheet3的形式显示在sheet4里的对应单元格 谢谢请赐教

追答Sub FindMinSheet()
    Dim lngRow As Long, lngCol As Long, i As Long, j As Long
    Dim varData As Variant
    Dim strName As String
    
    ThisWorkbook.Sheets("Sheet1").Select
    lngRow = Range("B6000").End(xlUp).Row
    lngCol = Cells(1, 10000).End(xlToLeft).Column
    
    For i = 2 To lngRow
        For j = 2 To lngCol
            If Sheets("Sheet1").Cells(i, j) <= Sheets("Sheet2").Cells(i, j) Then
                varData = Sheets("Sheet1").Cells(i, j).Value
                strName = "Sheet1"
            Else
                 varData = Sheets("Sheet2").Cells(i, j).Value
                 strName = "Sheet2"
            End If
            If varData > Sheets("Sheet3").Cells(i, j) Then
                varData = Sheets("Sheet3").Cells(i, j).Value
                strName = "Sheet3"
            End If
           Sheets("Sheet4").Cells(i, j).Value = strName
        Next j
    Next i
    MsgBox "over"
End Sub

如果不会操作,可以把源文件发邮件给我,我在其中设置好按钮,点击后即可实现。

相似回答