|
[广告] Excel易用宝 - 提升Excel的操作效率 · Excel / WPS表格插件 ★ 免费下载 ★ ★ 使用帮助★
今天试着用科大讯飞的AI模型写了段代码,但还是出错了,请帮忙看看,代码我是小白,只能慢慢读着理解
问题:
现在有一份Excel表格内含学生名单和对应的准考证号,另一份Excel表格只有学生名单,请问如何用VBA代码将准考证号填入相应的位置
回复:
Sub CopyTicketNumbers()
Dim ws1 As Worksheet, ws2 As Worksheet
Dim lastRow1 As Long, lastRow2 As Long
Dim i As Long, j As Long
'设置工作表对象
ws1 = ThisWorkbook.Worksheets("Sheet1") '更改为实际的工作表名称或引用
ws2 = ThisWorkbook.Worksheets("Sheet2") '更改为实际的工作表名称或引用
'获取第一个表格的最后一行行号和第二个表格的最后一行行号
lastRow1 = ws1.Cells(Rows.Count, "A").End(xlUp).Row
lastRow2 = ws2.Cells(Rows.Count, "A").End(xlUp).Row
'循环遍历每个学生名单,并在第二个表格中填入准考证号
For i = 2 To lastRow1 '从第二行开始循环,因为第一行是标题行
If ws1.Cells(i, "A").Value = "学生名单" Then '如果当前单元格是学生名单,则继续循环
For j = 2 To lastRow2 '从第二行开始循环,因为第一行是标题行
If ws1.Cells(i, "A").Value = ws2.Cells(j, "A").Value Then '如果当前单元格是学生名单,则在第二个表格中填入准考证号
ws2.Cells(j, "B").Value = ws1.Cells(i, "B").Value '使用Offset函数来跳过标题行并获取下一个准考证号
Exit For '退出内部循环,因为已经找到了正确的准考证号
End If
Next j
End If
Next i
End Sub
|
|