Board logo

標題: [發問] 不同工作表但相對應的儲存格重複 [打印本頁]

作者: j88141    時間: 2014-3-4 22:48     標題: 不同工作表但相對應的儲存格重複

請問有沒有辦法做到在不同工作表上面相對應的儲存格篩選出重複的值

比如說
工作表1 上的儲存格A1

工作表2上的儲存格A1

工作表3上的儲存格A1
出現相同的文字或數字

那就會顯示顏色或警示
我可以在同一個工作表示可以做到(用設定格式化的條件)
可是在不同工作表上一直無法做出來
作者: ricky8751    時間: 2014-3-5 00:02

回復 1# j88141


[attach]17674[/attach]
[attach]17675[/attach]

新增定義名稱後試過可以, 供參考!
作者: j88141    時間: 2014-3-5 10:55

好像不行耶
試了很多遍
不知道是不是我哪裡沒有用對
作者: Hsieh    時間: 2014-3-5 15:26

回復 1# j88141

選取A1儲存格,建立4個名稱
x=工作表1!A1
y=工作表2!A1
z=工作表3!A1
a=(COUNTA(x,y,z)>0)*((x=y)+(x=z)+(y=z))
選取工作表1要設定格式條件的儲存格
使用公式來決定要格式化哪些儲存格>公式
=a>0
  [attach]17680[/attach]
作者: j88141    時間: 2014-3-5 19:55

回復 4# Hsieh


    謝謝,可以使用了
作者: j88141    時間: 2014-3-7 01:04

回復 4# Hsieh

可以再問一下版主嗎
如果想要在A1:H10中
只要輸入4個同樣文字的話
那麼第四個文字就會出現顏色或警示
(沒有特定文字,只要有第4次重複的話就出現顏色或警示)
[attach]17698[/attach]
作者: Hsieh    時間: 2014-3-7 11:13

回復 6# j88141


    要找到第四個輸入位置應該不可能,或許可找到第四個位置
意思是無法取得第四個輸入順序,但如果是第四個位置,不依輸入順序倒可以試試
作者: j88141    時間: 2014-3-7 19:46

回復 7# Hsieh


    那如果說先在E4儲存格輸入公式
當E4等於  4的時候
讓他自動出現警示訊息
這樣可否做得出來


[attach]17699[/attach]
作者: Hsieh    時間: 2014-3-7 23:23

回復 8# j88141

選取A1,建立名稱X
=COUNTIF(工作表1!$A$1:$H$10,工作表1!A1)
選取A1:H10,設置驗證/自訂
=x<>4
[attach]17701[/attach]   
[attach]17702[/attach]
作者: ricky8751    時間: 2014-3-8 00:24

學習試了一下, 如果不是輸入而是複制貼上去是不會有錯誤提示,  樓主使用時要注意啊!
作者: j88141    時間: 2014-3-8 11:07

回復 9# Hsieh


   呼~試了很久  終於試出來了
原來 [忽略空白]需要取消勾選 不然做不出來

我還可以問一下嗎
因為我現在原本的儲存格已經有資料驗證了(有下拉式選單)
好像不能再用資料驗證了
有什麼方法讓兩個同時存在嗎?
謝謝~
作者: yen956    時間: 2014-3-10 15:48

回復 6# j88141
你的意思是不是這個?


如果是, 可試試看:
  1. '未決解前後空白的問題
  2. '例如: "台北"、" 台北"、"台北 " 會視為不同的名詞, 不知如何解決
  3. Private Sub Worksheet_Change(ByVal Target As Range)
  4.     '////////////
  5.     Dim myRange As Range, str1 As String
  6.     Set myRange = Worksheets(1).Range("A1:H10")
  7.    
  8.     If Not Intersect(Target, myRange) Is Nothing Then
  9.         Range("I1") = Target
  10.         If Target <> "" Then
  11.             Range("I2") = "=COUNTIF(A1:H10,I1)"
  12.             If Range("I2") >= 4 Then
  13.                 MsgBox Target & "已經輸入" & Range("I2") & "次了。", vbExclamation
  14.             End If
  15.         Else
  16.             Range("I1") = ""
  17.             Range("I2") = ""
  18.         End If
  19.     End If
  20.     '///////////////
  21. End Sub

  22. '可將兩行 '////////// 之間的 VBA 剪下, 貼到下面, 效果不同, 試試看
  23. Private Sub Worksheet_SelectionChange(ByVal Target As Range)
  24. End Sub
複製代碼

作者: j88141    時間: 2014-3-11 00:22

回復 12# yen956


    謝謝囉~
這是我想要的
:)




歡迎光臨 麻辣家族討論版版 (http://forum.twbts.com/)