Excel精英培训网

 找回密码
 注册
数据透视表40+个常用小技巧,让你一次学会!
查看: 1632|回复: 2

拷贝内容到表2如遇重复项则不执行

[复制链接]
发表于 2019-9-9 21:51 | 显示全部楼层 |阅读模式
本帖最后由 zhangv712 于 2019-9-10 20:07 编辑

Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)

   If Target.Column = 4 Then
   arr = Range("a2:c" & Range("a65536").End(3).Row)
        'Range("a2:c4").ClearContents
        With Sheets("12")
            .Range("a" & .Range("a65536").End(3).Row + 1).Resize(UBound(arr), UBound(arr, 2)) = arr
        End With
        End If
End Sub



这个是目前的代码  烦请老师指点!!

VL(NH5U1N5E{W8KEO)UOGB3.png

nnn.rar

12.95 KB, 下载次数: 4

发表于 2019-9-10 16:42 | 显示全部楼层
Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
    If Target.Column = 4 And pd Then test
End Sub


'判断
Function pd() As Boolean
    Dim A, x, y
    A = Sheets(1).Range("a2").CurrentRegion
    x = Arr2Str(A)
    A = Sheets(2).Range("a2").CurrentRegion
    y = Arr2Str(A)
    pd = InStr(y, x) = 0
End Function


'数组转字符串
Function Arr2Str(A) As String
    Dim i, j
    For i = 1 To UBound(A)
        For j = 1 To UBound(A, 2)
            Arr2Str = Arr2Str & A(i, j) & ","
        Next j
    Next i
End Function


'操作
Sub test()
    arr = Range("a2:c" & Range("a65536").End(3).Row)
    'Range("a2:c4").ClearContents
    With Sheets("12")
        .Range("a" & .Range("a65536").End(3).Row + 1).Resize(UBound(arr), UBound(arr, 2)) = arr
    End With
End Sub

评分

参与人数 1学分 +2 收起 理由
zhangv712 + 2 学习了

查看全部评分

回复

使用道具 举报

 楼主| 发表于 2019-9-10 19:58 | 显示全部楼层
感谢版主 !!!实在太完美了  {:3_52:}
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|手机版|Archiver|Excel精英培训 ( 豫ICP备11015029号 )

GMT+8, 2024-4-26 09:30 , Processed in 0.245862 second(s), 9 queries , Gzip On, Yac On.

Powered by Discuz! X3.4

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表