返回列表 上一主題 發帖

[發問] 如何快速複製剩下沒被選曲的?

[發問] 如何快速複製剩下沒被選曲的?

A1 B1 C1 D1  分別為  編號  單位  姓名  職稱
資料筆數不定
一般核對資料時都是把我擁有的選取~
找出剩下沒被選取的~

我該如何快速複製這些剩下沒被選曲的呢?
因為經常使用~每次都必須輸寫註記在選取這些沒被選取的~
非常麻煩~請教各位大大了

回復 21# Hsieh


   我按全部刪除~然後點複製沒勾選的~就OK了~
我剛測試了一下H老師的~似乎沒反應~
暫時用複製沒勾選的~謝謝老師

TOP

回復 20# av8d
全選甚麼位置?
例如C欄全選
[C:C].Select
因為你有工作表事件程序Selection_Change
所以避免觸發程序
Application.EnableEvents = False
[C:C].Select
Application.EnableEvents = True
學海無涯_不恥下問

TOP

本帖最後由 av8d 於 2014-3-21 11:12 編輯

回復 17# Hsieh


    請教H老師~
我將您的稍微改了一下
  1. Private Sub Worksheet_SelectionChange(ByVal Target As Range) '打勾
  2. If Cells(Target.Row, 1) <> "" And Target.Column = 3 Or Target.Column = 5 Then Cells(Target.Row, 5) = IIf(Cells(Target.Row, 5) = "", "v", "")
  3. End Sub
複製代碼
請問我製作了一個按鈕~想讓他按下去後~全選或全刪
是否有辦法?再次感謝

-------------------------------------------------------------------
全刪我大概想到了~就是直接指定刪除一整行~
全選大概想到的方法就是負制沒打勾的
再次感謝H老師

TOP

回復 17# Hsieh
還好有大大的幫忙, 不然真會被考倒, 收下啦, 謝謝!!

TOP

回復 17# Hsieh


    非常感謝Hsieh大大和yen956大大的大力幫助
受益良多~讓我的問題都迎刃而解~再次感謝!

TOP

回復 15# av8d
Private Sub Worksheet_SelectionChange(ByVal Target As Range) '打勾
If Cells(Target.Row, 1) <> "" And Target.Column = 3 Or Target.Column = 4 Then Cells(Target.Row, 3) = IIf(Cells(Target.Row, 3) = "", "v", "")
End Sub
學海無涯_不恥下問

TOP

回復 13# yen956


    請問能否只按下一個按鈕可以同時完成?如下
單按鈕.rar (21.41 KB)

因為工作表2的大毛和三毛被打勾
按下按鈕後~產生了J1:M3
同時也產生了工作表1的B2:D3

可能有點難度~不過還是很感謝大大的幫忙

TOP

本帖最後由 av8d 於 2014-3-17 19:40 編輯

回復 14# Hsieh

我嘗試修改了一下程式~可能是我還沒理解~
所以還無法改出我希望的答案~能否有勞大大代為修改了
    希望答案是這樣~如下
正反.rar (20.51 KB)

觸發打勾的只要C,D欄就好~其餘的欄位希望可以不要觸發~謝謝

TOP

回復 10# av8d
play.gif
  1. Private Sub CommandButton1_Click() '反選
  2. Application.EnableEvents = False
  3. Dim Rng As Range
  4. For Each a In Range("C:C").SpecialCells(xlCellTypeBlanks)
  5. If Rng Is Nothing Then
  6.   Set Rng = Union(Cells(a.Row, "B"), Cells(a.Row, "D"))
  7.   Else
  8.   Set Rng = Union(Rng, Union(Cells(a.Row, "B"), Cells(a.Row, "D")))
  9. End If
  10. Next
  11. Rng.Copy [J1]
  12. Rng.Copy Sheets(3).[B2]
  13. Application.EnableEvents = True
  14. End Sub

  15. Private Sub CommandButton2_Click() '選取
  16. Application.EnableEvents = False
  17. Dim Rng As Range
  18. Set Rng = Union([B1], [D1])
  19. For Each a In Range("C:C").SpecialCells(xlCellTypeConstants)
  20.   Set Rng = Union(Rng, Union(Cells(a.Row, "B"), Cells(a.Row, "D")))
  21. Next
  22. Range("J1").CurrentRegion.Clear
  23. Rng.Copy [J1]
  24. Sheets(3).[B2].CurrentRegion.Clear
  25. Rng.Copy Sheets(3).[B2]
  26. Application.EnableEvents = True

  27. End Sub

  28. Private Sub Worksheet_SelectionChange(ByVal Target As Range) '打勾
  29. If Cells(Target.Row, 1) <> "" Then Cells(Target.Row, 3) = IIf(Cells(Target.Row, 3) = "", "v", "")
  30. End Sub
複製代碼
反選.zip (21.77 KB)
學海無涯_不恥下問

TOP

        靜思自在 : 【蒙蔽的自由】人常在什麼都可以自由自在的時候,卻被這種隨心所欲的自由蒙蔽,虛擲時光而毫無覺知。
返回列表 上一主題