我有2个EXCEL表格,一个表格里的内容是12345,另一个表格里的内容是67890,那么我想再建立一个EXCEL表,里边通过一个统计按钮来实现把这两个表的内容都复制到这个统计表里。而且原先表里的内容不能改变,只是个复制的过程。如果原来两个表的内容更新了,那么对应的这个统计表里点统计按钮的话,生成的内容也跟着更新~请哪位朋友试着写下,谢谢。

解决方案 »

  1.   

    录制宏,看宏代码打开Excel,在菜单的"工具"->"宏"->"录制新宏",然后开始对Excel操作(比如:建立一个EXCEL表,然后把那两个表的内容都复制到这个统计表里),操作完了停止录制宏,在"宏"->"Visual Basic编辑器"->"模块"里的模块就有你录制的过程的代码,稍微修改就可以用到VB里
      

  2.   

    可以的,你在新建的哪个Excel里录制:打开那两个表,然后复制数据到那个新建的表里(打开Excel的代码也会被宏录制下来)
      

  3.   

    用LOOKUP函數(好像是)把這三個Excel文件關聯起來就可以了
    也不需要什麼按鈕,當前兩個文件中的任一個改變數值時,第三個表也會隨之改變
      

  4.   

    这个应该不必用vb编程吧试试直接在excel里用vba看行不行
    把原有的两个表格都作为新表格的数据源,然后一切都跟普通的数据库查询没什么大区别,都是改sql查询语句。有时间试试。。
      

  5.   

    Sub jaaa() 
      Set VBExcel = CreateObject("excel.application")
      Set xBook = VBExcel.Workbooks.open("E:\aaa.xls") 打开一个EXCEL文件
      Set xSheet = xBook.Worksheets("1")
      Set vbe = CreateObject("excel.application")
      Set xb = vbe.Workbooks.Add   创建一个新的EXCEL文件
      Set xs = xb.Worksheets(1)
      xs.Cells(1, 2) = xSheet.Cells(1, 2)
      Dim strFile As String
    xb.SaveAs "E:\12.xls" 把新创建的文件保存
    xb.Close
    vbe.Quit
    xBook.Close
    VBExcel.Quit
    End Sub可以把你已经存在的两个文件都打开,并对相应位置上的内容进行操作后,填写在新的表格里
      

  6.   

    上樓的兄弟,你是打開了一個表吧,那另一個表你加在哪?怎麽打開?xs.Cells(1, 2) = xSheet.Cells(1, 2)
    這個是你操作的過程?1,2代表什麽?
      

  7.   

    Set VBExcel = CreateObject("excel.application")
      Set xBook = VBExcel.Workbooks.open("E:\aaa.xls") 打开一个EXCEL文件
      Set xSheet = xBook.Worksheets("1")
    是打开对应EXCEL里的sheet.你可以用同样的方法打开另一个表啊,只不过修改以下变量名称而已啊 比如把
    Set VE= CreateObject("excel.application")
      Set xB = VBExcel.Workbooks.open("c:\aaa.xls") 打开一个EXCEL文件
      Set xS = xBook.Worksheets("1")就打开你的第二个文件了
    xs.Cells(1, 2) = xSheet.Cells(1, 2) 是把原来EXCEL里的第一行,第二列处的数据添加到新建表格的第一行,第二列的位置如果数据多,可以使用FOR循环的
      

  8.   

    还是没有解决排序的问题,这样其实是给写死了,加入表中数据过多,或者继续添加,那总计的表没有办法跟上,而且各个表的格式可能还不一样,这样的话,是不是得进行读取?昨天听一个朋友说,excel里边有个引用功能,能实现几个excel的同步,不知道这种引用是什么函数?
      

  9.   

    引用????是获取外部数据吧,就是我上面提到的方法可以轻松完成数据的条件检索、排序等基本功能更新数据也不必自己另外写代码
    但具体到楼主的问题,在新的excel文件里可能需要用到三个sheet。。
      

  10.   

    详细说说你的情况吧,包括现有两个excel文件的结构及给出部分示例数据。。以及要在新表中达到什么效果。有时间我帮你试试。
      

  11.   

    留言及邮件都收到了。显示更新数据、排序都应该不是大问题,不需要编程,只要在excel做一些设置获取数据就行了最大的问题是你的表没有标题栏,数据回来后每个表都会少了第一行的数据。正在想解决办法。
      

  12.   

    能不能在a.xls、b.xls里加上标题栏???
    如果这两个文件是由sql server导出来的,应该也可以带上标题吧。