[算表]在B行將A行中有*Z*W*D*的列打V

看板Office作者 (呼~呼~叔叔覺得妳好可愛~)時間7年前 (2019/03/04 02:48), 7年前編輯推噓0(0024)
留言24則, 3人參與, 7年前最新討論串1/1
軟體:Excel 2003 版本: 大家好,我又來發問了。 現在A行中的每個儲存格都有一個單字。 我想找*Z*W*D*的單字,若是符合條件,想在B行的那一列打V。 請問涵數要如何寫? *Z*W*D*的意思是,*代表萬用符合(可表0個或多個字)。 舉個列字,aZWxD符合,aZyyyWxDii符合,ZWD符合,ZaWDe符合。 也不是只要用ZWD三個字母就好,不管前面有沒有其他字母,或是中間有沒有隔多少字, 這三個字母中,Z必需在前面、W在中間、D在後面。 這樣有了解我的意思嗎? 若是只有ZWD的話,我會寫。 =IF(ISERROR(IF(FIND("ZWD",A5317)>=1,"v","")),"",IF(FIND("ZWD",A5317)>=1,"v","")) 可是*Z*W*D*的狀況我就不會寫了。 請教我好嗎? -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 114.25.196.249 ※ 文章網址: https://www.ptt.cc/bbs/Office/M.1551638924.A.510.html

03/04 06:51, 7年前 , 1F
03/04 06:51, 1F

03/04 08:06, 7年前 , 2F
s大,這樣搜出來ZED的順序問題似乎沒考慮?
03/04 08:06, 2F

03/04 08:06, 7年前 , 3F
抱歉,ZWD
03/04 08:06, 3F

03/04 08:07, 7年前 , 4F
啊抱歉看懂了
03/04 08:07, 4F

03/04 09:53, 7年前 , 5F
謝啦,Soyoso,每次都麻煩您。原來公式要這樣,感恩!
03/04 09:53, 5F
不好意思,又有新的問題,因為要查的條件太多了,除了*Z*W*D*之外,還有很多種,我 想寫在B1、C1、D1、E1、……,隨時會增加,然後符合條件的它會自動跑出"V"。 就是在從B1開始的第一列內只要填入條件,如ZWD、AABBX、*ZWD*、*Z*W*D*、*RRS* 、*ZO*F*、*O*W*D*……等等,隨時增加,只要在第一列增加條件,它就會跑出來,這樣 我整個公式要怎麼寫呢? ※ 編輯: ddqueen (114.36.225.23), 03/04/2019 12:25:04

03/04 12:33, 7年前 , 6F
03/04 12:33, 6F
感謝您,這就是我要的。 不過再請教您,有二個條件我不知怎寫, 就是倒數第四個字等於倒數第三個字、「並且」倒數第二個字等於到數第一個字。 我是寫成如下 =IF(AND(MID(A2,LEN(A2)-3,1)=MID(A2,LEN(A2)-2,1),MID(A2,LEN(A2)-1,1)=MID(A2,LEN(A2),1)),"V","") 我想請教您,是否有辦法和上面的一樣,我把條件寫在第一列,然後下面的公式就會自已 帶出來? 我就是不知該如何把我這個條件寫出來在第一列。 ※ 編輯: ddqueen (114.36.225.23), 03/04/2019 14:24:24

03/04 16:05, 7年前 , 7F
如果是要調整倒數第幾個字或是條件的數量的話
03/04 16:05, 7F

03/04 16:06, 7年前 , 8F
可將第一列設計為 https://i.imgur.com/a5s4Cwa.jpg
03/04 16:06, 8F

03/04 16:07, 7年前 , 9F
自訂名稱以evaluate
03/04 16:07, 9F

03/04 16:11, 7年前 , 10F
第1列內的字串以substitute將)取代+1,1),將@取代為回文公
03/04 16:11, 10F

03/04 16:12, 7年前 , 11F
式內mid(...- 到減號的部分;因列號要隨拖曳改變,請加入
03/04 16:12, 11F

03/04 16:13, 7年前 , 12F
函數row()以&符號連接
03/04 16:13, 12F

03/04 16:15, 7年前 , 13F
前後and(和最後的)一樣,加入以&連接
03/04 16:15, 13F

03/04 16:18, 7年前 , 14F
目的是以取代方式達到回文內and(mid()=mid(),....)這樣的
03/04 16:18, 14F

03/04 16:19, 7年前 , 15F
字串,再於名稱以evaluate運算後回傳
03/04 16:19, 15F

03/04 16:25, 7年前 , 16F
2003的話名稱是在插入內定義,用該方式的話巨集安全性請調
03/04 16:25, 16F

03/04 16:25, 7年前 , 17F
03/04 16:25, 17F
謝謝您。 ※ 編輯: ddqueen (114.36.225.23), 03/04/2019 17:00:22 又有一個問題,如果我的條件是只要有R、P、D、K這四個字母,不分順序的話,函數要如 何寫?我試著寫如下,但是結果我寫錯了、不會寫。 =IF(COUNTIF($A2,AND(R,P,D,K)),"V","") 結果EXCEL說我寫錯了……。 ※ 編輯: ddqueen (114.36.243.148), 03/06/2019 02:17:55 成功了,我寫成如下 =IF(AND(COUNTIF($A2,"*R*")>0,COUNTIF($A2,"*P*")>0,COUNTIF($A2,"*D*")>0,COUNTIF($A2,"*K*")>0),"V","") 可是好長,請問有更簡略的寫法嗎? ※ 編輯: ddqueen (114.36.243.148), 03/06/2019 02:32:52

03/06 06:52, 7年前 , 18F
03/06 06:52, 18F
謝謝你喔。 ※ 編輯: ddqueen (114.25.195.252), 03/06/2019 12:02:04 請問為什麼有大括弧?又是陣列模式嗎? ※ 編輯: ddqueen (114.25.195.252), 03/06/2019 13:40:19

03/06 13:49, 7年前 , 19F
這個括弧為稱為矩陣常數或常數陣列,而非按下組合鍵ctrl+
03/06 13:49, 19F

03/06 13:50, 7年前 , 20F
shift+enter陣列公式外層所加上的那種
03/06 13:50, 20F
那請問一下,若是條件改成,只要有R、P、D、K這四個字母中任一個的話呢? ※ 編輯: ddqueen (114.36.243.27), 03/08/2019 23:37:34 以W、S、X三個字母中的任一個為條件,只要出現任一個字母就不要打勾,我是寫成 =IF(SUM(COUNTIF(A2,"*W*"), COUNTIF(A2,"*S*"),COUNTIF(A2,"*X*"))>0,"","V") 請問上面這個函數可以再優化嗎? ※ 編輯: ddqueen (114.36.243.27), 03/09/2019 00:52:25

03/09 09:43, 7年前 , 21F
R、P、D、K任一個就回傳"v"的話,就為sum(--(countif(...)
03/09 09:43, 21F

03/09 09:45, 7年前 , 22F
=1)),將要回傳"v"的字串改至value_if_true
03/09 09:45, 22F

03/09 09:47, 7年前 , 23F
W、S、X任一個就回傳空字串的話,同上,將回傳"v"字串改至
03/09 09:47, 23F

03/09 09:47, 7年前 , 24F
value_if_false
03/09 09:47, 24F
謝,我來研究看看。 ※ 編輯: ddqueen (114.25.197.174), 03/11/2019 02:02:58
文章代碼(AID): #1SV26CKG (Office)
文章代碼(AID): #1SV26CKG (Office)