Excel 查找记录并更新
我有一些excel表格,用户必须在表格2中插入数据列表。 然后用户点击按钮,sheet1根据sheet2中的数据插入进行更新 此代码将查找工作表2中是否缺少数据,然后正确插入数据。 我还需要对现有记录进行更新。 sheet1上的现有数据已添加带有注释的manuel列,这些注释不应在数据更新时删除 表1中的数据位于C到N列之间-键位于JExcel 查找记录并更新,excel,vba,Excel,Vba,我有一些excel表格,用户必须在表格2中插入数据列表。 然后用户点击按钮,sheet1根据sheet2中的数据插入进行更新 此代码将查找工作表2中是否缺少数据,然后正确插入数据。 我还需要对现有记录进行更新。 sheet1上的现有数据已添加带有注释的manuel列,这些注释不应在数据更新时删除 表1中的数据位于C到N列之间-键位于J Dim iLast As Long Dim iCounter As Integer iLast = Sheets(2).Range("I" &
Dim iLast As Long
Dim iCounter As Integer
iLast = Sheets(2).Range("I" & Application.Rows.Count).End(xlUp).Row
Dim rng As Range
For iCounter = 2 To iLast
Set rng = Sheets(1).Range("J:J").Find(Sheets(2).Range("I" & iCounter).Value)
If rng Is Nothing Then
Sheets(2).Range("B" & iCounter & ":" & "M" & iCounter).Copy
Sheets(1).Range("C" & Sheets(1).Range("J" & Application.Rows.Count).End(xlUp).Row + 1).PasteSpecial xlPasteAll
Range("B2").Select
'Insert mailto link
Selection.Copy
Sheets(1).Range("B" & Sheets(1).Range("J" & Application.Rows.Count).End(xlUp).Row).Select
'Range("B3").Select
ActiveSheet.Paste
ActiveSheet.Paste
Application.CutCopyMode = False
Else
'MsgBox "update existing row with new data - how to"
End If
Next iCounter
您应该能够以与添加新行类似的方式完成此操作 如果使用xlPasteValues而不是xlPasteValues,则不应影响工作表1中的所有注释 假设您只需要复制值,并且没有额外的格式或注释需要复制 我不太清楚你想要达到什么,这让我觉得有点困难,但我想这就是你想要做的
Dim iLast As Long
Dim iCounter As Integer
iLast = Sheets(2).Range("I" & Application.Rows.Count).End(xlUp).Row
Dim rng As Range
For iCounter = 2 To iLast
Set rng = Sheets(1).Range("J:J").Find(Sheets(2).Range("I" & iCounter).Value)
If rng Is Nothing Then
Sheets(2).Range("B" & iCounter & ":" & "M" & iCounter).Copy
Sheets(1).Range("C" & Sheets(1).Range("J" & Application.Rows.Count).End(xlUp).Row + 1).PasteSpecial xlPasteAll
Range("B2").Select
'Insert mailto link
Selection.Copy
Sheets(1).Range("B" & Sheets(1).Range("J" & Application.Rows.Count).End(xlUp).Row).Select
'Range("B3").Select
ActiveSheet.Paste
ActiveSheet.Paste
Application.CutCopyMode = False
Else
Sheets(2).Range("B" & iCounter & ":" & "M" & iCounter).Copy
Sheets(1).Range("C" & rng.Row).PasteSpecial xlPasteValues
End If
Next iCounter
这段代码只搜索键,如果它不存在,则添加一个包含数据的新行。然后对表1中的数据进行排序,这就是我需要帮助的原因。如何查找和定位需要更新的字段?能否提供工作簿的示例?(图片/样本数据或文件等)。除非第2页中有真正不同的内容,否则如果可以在此处下载blockexcel文件,它应该是第一个文件的近似副本