如图,EXCEL B(可以选择a或b列数据)的怎样快速获得EXCEL A中相应的数据?请大神指教

解决方案 »

  1.   

    更正下标题是“VBA”
      

  2.   

    在Excel中开始记录宏,手动完成所需功能,结束记录宏,按Alt+F11键,查看刚才记录的宏对应的VBA代码。
      

  3.   

    Thanks,这样的复制多次宏,有没有更快的办法呢
      

  4.   

    Sub copy()
    Dim rng As Range, ws As Worksheet
    Set ws = Workbooks("EXCELA.xlsx").Worksheets(1)
    For Each rng In Range(ws.[a1], ws.[a1].End(4))
    If rng = [a1] Then rng.Offset(0, 1).copy [a65536].End(3).Offset(1, 0)
    If rng = [b1] Then rng.Offset(0, 1).copy [b65536].End(3).Offset(1, 0)
    If rng = [c1] Then rng.Offset(0, 1).copy [c65536].End(3).Offset(1, 0)
    Next
    End Sub
    自己新建EXCELA和EXCELB两个表  数据要放Sheet1,自制以上代码到EXCELB表上运行即可
      

  5.   

    vlookup函数是不是就解决你的问题了。
      

  6.   

    在Excel中开始记录宏,手动完成所需功能,结束记录宏,按Alt+F11键,查看刚才记录的宏对应的VBA代码
      

  7.   

    别要要的VBA代码 不是要其他方式得出的结果
      

  8.   


    你可以在ExcelB的某个sheet页里面,按上图加一个button,然后点击这个button进去写下以下代码:for i=1 to SheetA.Range("a65533").End(xlUp).Row
        sheetB.cells(i,1)=sheetA.cells(i,1)
        sheetB.cells(i,2)=sheetA.cells(i,2)
        sheetB.cells(i,3)=sheetA.cells(i,3)
    next isheetA的1,2,3列对应你的q,a,b列;同理于sheetB.