返回列表 上一主題 發帖

[發問] 篩選後不隱藏

回復  singo1232001
感謝大大幫忙
另外,我現在若想要把篩選完的結果複製去Sheet2
要怎麼寫
wang077 發表於 2021-7-13 11:47


請測試看看,謝謝

test1.zip (21.47 KB)

TOP

回復  samwang
大大,我如果要把複製過去的資料(Sheet2)跟Sheet1的資料同步呢,我找不到相關的參考資料
...
wang077 發表於 2021-7-13 16:01


請測試看看,謝謝

test2.zip (26.5 KB)

TOP

回復  samwang
samwang 大大 你好
同樣問題請教
工作表1中"A2:A300"資料.複製至工作表2中"A2"開始貼上. ...
BV7BW 發表於 2021-7-14 08:04


請試看看,謝謝

Sub test()
Dim Arr, xD, T, i&, n%
Set xD = CreateObject("Scripting.Dictionary")
Arr = Range([工作表2!N1], [工作表2!a65536].End(3))
For i = 2 To UBound(Arr)
    T = Arr(i, 1) & Arr(i, 3): xD(T & "") = i
Next
Arr = Range([工作表1!N1], [工作表1!A65536].End(3))
For i = 2 To UBound(Arr)
    T = Arr(i, 1) & Arr(i, 3)
    If xD.Exists(T & "") = False Then
        n = [工作表2!a65536].End(3).Row + 1
        Sheets(1).Range(Cells(i, 1), Cells(i, 14)).Copy Sheets(2).Range("a" & n)
    End If
Next
End Sub

TOP

回復  samwang
大大,好像反向了,我的意思是要在Sheet2新增資料,同步到Sheet1
這好像是Sheet1新增資料 ...
wang077 發表於 2021-7-14 08:19


不好意思看錯,已更新請再測試看看,謝謝

test3.zip (26.12 KB)

TOP

回復 12# wang077


我測試沒問題,請再測試看看,謝謝

TOP

回復  samwang
   謝謝 samwang 大大
測試後可運用 .經篩選後完全無誤
再請問如不用篩選.是否可以
列將 ...
BV7BW 發表於 2021-7-14 13:49


可以,那段程式碼與篩選無關,只要有表1新增按執行後就會將新增的資料複製到表2,謝謝

TOP

回復  samwang
大大,應該只有2筆有新增
但好像有第三筆新增到了
wang077 發表於 2021-7-14 13:41


因為我測試沒問題,如果您有測試到問題請附檔這樣比較容易找問題,謝謝

TOP

回復 19# wang077

請再測試看看,謝謝

Sub 更新2()
Dim Arr, T, T2, i&
If Sheets(1).FilterMode Then Sheets(1).ShowAllData
Arr = Sheets(1).Range([sheet1!f1], [sheet1!a65536].End(3))
Arr2 = Sheets(2).Range([sheet2!f1], [sheet2!a65536].End(3))
For i2 = 3 To UBound(Arr2)
    T2 = Arr2(i2, 1) & Arr2(i2, 3) & Arr2(i2, 6)
    For i = 1 To UBound(Arr)
        T = Arr(i, 1) & Arr(i, 3) & Arr(i, 6)
        If T = T2 Then
            Sheets(2).Range("h" & i2 & ":bq" & i2).Copy Sheets(1).Range("h" & i)
        End If
    Next
Next
End Sub

TOP

回復  samwang
samwang 大大
測試結果
工作表1"A2"資料是1."A3"是3.複製工作表2"A2"=2."A3"=3無誤

清 ...
BV7BW 發表於 2021-7-14 14:34


不好意思,真的辛苦您的測試且回饋問題,後學真的有看但不太了解問您的問題
我自己猜想如何判定是否為新增問題,T = Arr(i, 1) & Arr(i, 3)  'A欄 + C欄當作key
有不一樣就複製到另一個表格,可以自己改看看,不知是否有解到您的問題,謝謝。

TOP

回復  samwang
對了,大大
我把Sheet1,Sheet2重新命名的話
程式碼部分要怎麼改?
昨天試了一下,改完都 ...
wang077 發表於 2021-7-15 08:26


需修改如下,謝謝

Arr = Sheets(1).Range([sheet1!f1], [sheet1!a65536].End(3))
Arr2 = Sheets(2).Range([sheet2!f1], [sheet2!a65536].End(3))

TOP

        靜思自在 : 有心就有福,有願就有力,自造福田,自得福緣。
返回列表 上一主題