excel引用另一个表格的数据

在局域网上存在一个文件asc.csv文件,该文件只能以只读方法打开,而且在时刻更新中。
请较通过怎样的办法可以在一个工作表中,使用宏命令或者其他办法,引用那个文件的某几列,而且刷新时也能更新数据!
经过一上午的实验,我的这个方法可以实现,但是当数据比较多时,效率蛮低(注:我需要6列*6000行的数据)。
Sub getvalue()
Dim i As Integer, j As Integer, m As Integer, n As Integer
Application.ScreenUpdating = False
Workbooks.Open "d:\ascclass.csv", ReadOnly
m = ThisWorkbook.Sheets(1).Cells(1, 1).End(xlDown).Row
n = ActiveWorkbook.Sheets(1).Cells(1, 1).End(xlDown).Row
For i = m To n
For j = 1 To 5
ThisWorkbook.Sheets(1).Cells(i, j) = ActiveWorkbook.Sheets(1).Cells(i, j)
ThisWorkbook.Sheets(1).Cells(i, 6) = ActiveWorkbook.Sheets(1).Cells(i, 33)
Next j
Next i
ActiveWorkbook.Close SaveChanges:=False
Application.ScreenUpdating = True
End Sub
'参数说明
'i:行号
'j:列号
'm:本地表格A1最后一行非空值的行号
'n:局域网表格ascclass.csv表格A1的最后一行非空值的行号,本地实验,文件放到了D盘
如果有什么办法能够直接引用行,估计效率会更高一些!
期待更好的答案!

  1、商品表1,看有商品代号


  2、商品表2,看也商品代号

  3、把商品表2中的其它两个分类"标题"栏目复制到商品表1中.

  4、接着下面用公式引用.

  在商品表1中选中单元格,再点击上面的fx,选择全部,找到vlookup.点确定

  5、关于Vlookup函数内容解析:

  Lookup_value“唯一值”为需要在数组第一列中查找作参考的关系数值,它可以是数值或文字符串。比如:举例中的商品代码列,一般是第一列的数值,作为唯一数据参考而用的。(本表格中)

  Table_array“区域”:数值区域,如“A:D”,就是您所有想引用过来的数据(想要引用数据的表格)

  Col_index_unm“列序号”:引用区域值里面的第一列,比如从A到D共有4列,我想引用B列数值过来,那么就选择2,因为B列在区域的第二列,其它也是这么推算

  Range_lookup“逻辑值”:一般填TRUE或FALSE。指函数 VLOOKUP 返回时是精确匹配还还是近似匹配。 通常都是写false。

  第一个单元格引用成功后,就往下拉(当单元格最右下角变实心,再往下拉,意思与上如同。)

  6、另一列的品牌也是照着上面的方法,重复第4与第5步,也可以直接插入复制第前一列的粘贴操作.只是需要把那个第三个数值的,第二列2改成第三列3..完成再把公式拉下来.

  7、展现的效果就是如图下,结合了两个表格的数据.

温馨提示:答案为网友推荐,仅供参考
第1个回答  2010-08-29
你这样操作:第一步,你先打开你电脑的电子表格文件,再通过网上邻居打开局域网的ASC。csv文件,在你的文件中点击你要引用的单元格,再点你打开的asc.csv文件相应的引用位置并回车。
第2个回答  2010-08-29
使用VLOOKUP函数,具体的要根据具体情况设置公式.

=VLOOKUP(Sheet1!A3,[XXXX.xls]Sheet1!A:A,1,FALSE)
第3个回答  推荐于2016-05-18
#001 Sub CopyData_2()
#002 Dim Wb As Workbook
#003 Dim Temp As String
#004 Application.ScreenUpdating = False
#005 Temp = ThisWorkbook.Path & "\数据表.csv"
#006 Set Wb = GetObject(Temp)
#007 With Wb.Sheets(1).Range("A1").CurrentRegion
#008 Range("A1").Resize(.Rows.Count, .Columns.Count) = .Value
#009 Wb.Close False
#010 End With
#011 Set Wb = Nothing
#012 Application.ScreenUpdating = True
#013 End Sub本回答被提问者采纳