求excel vba代码,当A列输入与上面单元格内容有重复时,自动填入重复单元格其他列内容 80
求excelvba代码,当A列输入内容与输入单元格上面的内容有重复时,按回车键后自动填入第一个重复单元格其他列内容,如图片说明,谢谢...
求excel vba代码,当A列输入内容与输入单元格上面的内容有重复时,按回车键后自动填入第一个重复单元格其他列
内容,如图片说明,谢谢 展开
内容,如图片说明,谢谢 展开
2个回答
展开全部
Sub s()
Set d = CreateObject("scripting.dictionary")
c = InputBox("请输入列标:")
n = Cells(Rows.Count, c).End(3).Row
For i = 1 To n
a = Cells(i, c).Text
If a <> "" Then
If d.exists(a) Then
MsgBox c & "列内容有重复!"
Exit Sub
Else
d.Add a, ""
End If
End If
Next
MsgBox c & "列内容无重复!"
End Sub
Set d = CreateObject("scripting.dictionary")
c = InputBox("请输入列标:")
n = Cells(Rows.Count, c).End(3).Row
For i = 1 To n
a = Cells(i, c).Text
If a <> "" Then
If d.exists(a) Then
MsgBox c & "列内容有重复!"
Exit Sub
Else
d.Add a, ""
End If
End If
Next
MsgBox c & "列内容无重复!"
End Sub
追问
我想要A列输入一个值,输入单元格A列上面重复时,回车后自动带入B~D列对应的,您的代码不对,请帮忙再看下,谢谢!
在吗
展开全部
Private Sub Worksheet_Change(ByVal Target As Range)
Dim c As Range
For Each c In Target
r = Application.Match(c.Value, Range("a:a"), 0)
If c.Column =1 Then
If c.Value <> "" Then
If c.Value = Range("a" & r).Value Then
c.Offset(0, 1).Value = Range("b" & r).Value
c.Offset(0, 2).Value = Range("c" & r).Value
c.Offset(0, 3).Value = Range("d" & r).Value
End If
End If
End If
Next
End Sub
输入以上代码,绝对没有问题
Dim c As Range
For Each c In Target
r = Application.Match(c.Value, Range("a:a"), 0)
If c.Column =1 Then
If c.Value <> "" Then
If c.Value = Range("a" & r).Value Then
c.Offset(0, 1).Value = Range("b" & r).Value
c.Offset(0, 2).Value = Range("c" & r).Value
c.Offset(0, 3).Value = Range("d" & r).Value
End If
End If
End If
Next
End Sub
输入以上代码,绝对没有问题
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询