欢迎访问服务器技术网-www.fuwuqijishu.com

请教:如何用VBA把数据从一个表复制到另一个表中?

软件 fuwuqijishu 2年前 (2022-10-01) 10次浏览 0个评论 扫描二维码

关于请问:想用VBA把EXCEL数据从别的表中复制到另张表中,不知如何实现,请指教,多谢。
1表示还有两个问题以后再请教。请不要用字典法。的问题

其实你提出的这个问题,用函数就可以解决。涉及跨表存取数据,打开表执行查找后再关闭,程序的运行效率不高。
下面的代码实际就是用函数执行查找,然后处理成数值,感觉可能要快一点。
引用各科成绩的数据原理和引用考场号是一样的,只要修改代码中公式的内容就好了,
Sub 从登分表中导入考场座号数据()
Application。
ScreenUpdating = False
Dim wstTemp As Worksheet, intRow%
For Each wstTemp In ActiveWorkbook。Worksheets
With wstTemp
intRow = 。
[A65536]。End(xlUp)。Row
If wstTemp。Name Like “*文*” Then
。Range(“G3:G” & intRow)。FormulaR1C1 = “=VLOOKUP(RC[-6],[文登分表。
xls]文科登分表!C1:C5,4,0)”
。Range(“H3:H” & intRow)。FormulaR1C1 = “=VLOOKUP(RC[-7],[文登分表。xls]文科登分表!C1:C5,5,0)”
。Range(“G3:H” & intRow)。
Copy
。Range(“G3:H” & intRow)。PasteSpecial xlPasteValues, xlNone, False, False
ElseIf wstTemp。Name Like “*理*” Then

Range(“G3:G” & intRow)。FormulaR1C1 = “=VLOOKUP(RC[-6],[理登分表。xls]理科登分表!C1:C5,4,0)”
。Range(“H3:H” & intRow)。FormulaR1C1 = “=VLOOKUP(RC[-7],[理登分表。
xls]理科登分表!C1:C5,5,0)”
。Range(“G3:H” & intRow)。Copy
。Range(“G3:H” & intRow)。PasteSpecial xlPasteValues, xlNone, False, False
End If
End With
Next
Application。
ScreenUpdating = True
End Sub
Sub 清除考场座号数据()
Application。ScreenUpdating = False
Dim wstTemp As Worksheet, intRow%
For Each wstTemp In ActiveWorkbook。
Worksheets
With wstTemp
If wstTemp。Name Like “*文*” Or wstTemp。Name Like “*理*” Then
intRow = 。[A65536]。End(xlUp)。
Row
。Range(“G3:H” & intRow)。ClearContents
End If
End With
Next
Application。ScreenUpdating = True
End Sub。

喜欢 (0)
发表我的评论
取消评论
表情 贴图 加粗 删除线 居中 斜体 签到

Hi,您需要填写昵称和邮箱!

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址

Warning: error_log(/www/wwwroot/fuwiqijishu/wp-content/plugins/spider-analyser/#log/log-2607.txt): failed to open stream: No such file or directory in /www/wwwroot/fuwiqijishu/wp-content/plugins/spider-analyser/spider.class.php on line 2900