看板 Office 關於我們 聯絡資訊
軟體:GOOGLE試算表 版本:網上最新 各位前輩午安 之前有幸得到S大關於製作中日期的篩選解答 算式如下我先貼出 =QUERY('範例'!A1:D11,"select A,B,C,D where ((C<=date"""&text(F2,"yyyy-mm-dd")&""") and (D>=date"""&text(F2,"yyyy-mm-dd")&"""))",0) 現在想請問在"範例"頁籤不被更動的情況下 是否可抓取帶有【】的上層訊息? 解說如圖 1.範例頁籤 https://i.imgur.com/UzrH30t.jpg 2.上面算式得出今天製作中項目 https://i.imgur.com/1wV0UQd.jpg 但面臨到的問題就是不知道大項目,只知道小項目 3.希望得到的結果如下圖 https://i.imgur.com/vtD8KrJ.jpg 再請各方先進協助,感覺是要抓取往上有【】的欄位並顯示 跪求各方先進解惑(BOW) -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 111.235.135.49 (馬來西亞) ※ 文章網址: https://www.ptt.cc/bbs/Office/M.1610347917.A.5AF.html
soyoso: 條件上加上或or,B是開始字元是括號【的,以like,括號後 01/11 15:24
soyoso: 面不定數字元以% 01/11 15:24
soyoso: https://i.imgur.com/X5vejFj.jpeg 01/11 15:24
ejeanstone: 感謝S大解惑,想請問能提供您修正的算式嗎? 01/11 15:33
soyoso: ?我已經提供方法了 01/11 15:36
soyoso: 請先試著做看看好嗎 01/11 15:36
ejeanstone: 了解~感謝! 01/11 15:38
soyoso: 做了有問題再提出;也可用filter來做,可不用date...text 01/11 15:45
soyoso: ,條件直接看儲存格f2的日期是否在開始C欄和結束D欄日期內 01/11 15:45
soyoso: ,and以*,開始字元是否為括號【,以函數left,or以+ 01/11 15:45
ejeanstone: 好的~稍晚試試看,成功再告知S大,感謝! 01/11 15:52
S大早安,早上用試了一下,發現寫成三交集的條件了... =FILTER('範例'!A2:D11,(LEFT('範例'!B2:B11,1)=G2),('範例'!C2:C11<=F2)&('範例 '!D2:D11>=F2)) 單獨寫篩選日期OK,單獨寫篩選引號也OK,但就是不知道怎麼向上抓取,所以變成無交集 https://i.imgur.com/OG1IF4T.jpg 試過連接用+號,逗號,AND,&,OR,好像都不太對,再請S大提供思路~感謝! ※ 編輯: ejeanstone (111.235.135.49 馬來西亞), 01/12/2021 12:07:07
soyoso: 就回文01/11 15:45 寫的,and以*,or以+,(條件1)*(條件2) 01/12 12:26
soyoso: ,or的條件以+再加入 01/12 12:26
ejeanstone: 好,感謝S大,我試試看 01/12 13:38
ejeanstone: 成功了感謝S大賜教! 01/12 14:00
想延伸詢問,現在會抓【的條件,但發現好像我可能找錯方向 當範例出現第9第10列的時候,如下圖 https://i.imgur.com/nkDVFpJ.jpg 公式就會跑出無意義的第10列 https://i.imgur.com/f0MBxeT.jpg 等於篩選【的出現條件不是無限制的 而是下方那列有符合日期的情況才會出現 再請S大提供思路,感謝! ※ 編輯: ejeanstone (111.235.135.49 馬來西亞), 01/12/2021 16:09:33
soyoso: 可多一欄輔助欄判斷c欄是否為空白儲存格"",是的話函數 01/12 17:17
soyoso: countifs,以儲存格c2來看,範圍函數offset,儲存格c3起, 01/12 17:17
soyoso: 高度以函數match,搜尋true,搜尋就是c3起往下是否為空白 01/12 17:17
soyoso: 儲存格="",有了offset的動態範圍就可以看儲存格g2的日期 01/12 17:17
soyoso: 是否在開始和結束日期內,沒有的話就是0(如連結內儲存格e9 01/12 17:17
soyoso: ),那c欄不是空白儲存格的話也回傳0;公式有使用到陣列, 01/12 17:17
soyoso: 配合函數arrayformula 01/12 17:17
soyoso: 原本filter要以b欄判斷的,就改以輔助欄大於0 01/12 17:17
soyoso: https://i.imgur.com/UQaWCmU.jpg 01/12 17:17
ejeanstone: 感謝S大~有點頭大~晚點來試試看 01/12 17:31
目前寫到這邊,還不太清楚輔助欄的寫法,還有arrayformula應該寫在哪個段落裡面? https://i.imgur.com/OpobRlF.jpg 再請S大指點,感謝! ※ 編輯: ejeanstone (111.235.135.49 馬來西亞), 01/13/2021 15:57:50
soyoso: 01/12 17:17的回文寫了,函數match,搜尋true,不是搜尋"" 01/13 16:22
soyoso: 搜尋是c3起往下是否為空白儲存格="",不是c2:c13,回文寫 01/13 16:22
soyoso: 的是c3起往下是否為空白儲存格="",這裡是要搜尋判斷後的 01/13 16:22
soyoso: 邏輯值true或false,不是搜尋儲存格 01/13 16:22
soyoso: arrayformula可包countifs,或是最外層(如果還有配合其他 01/13 16:22
soyoso: 函數如if的話) 01/13 16:22
soyoso: 另外要了解一下函數countifs,這個動態範圍不是在條件,條 01/13 16:26
soyoso: 件要指定的是儲存格g2(介於開始和結束日期方面,要自行調 01/13 16:26
soyoso: 整) 01/13 16:26
ejeanstone: 好的~感謝S大~晚點來測試看看 01/13 16:31
soyoso: 補充一下,c欄無資料方面我是以空白儲存格來模擬的,如果 01/13 16:53
soyoso: 實際資料是空字串的話,則可搜尋"",但不是c2:c13而是c3起 01/13 16:53
soyoso: 往下的範圍 01/13 16:53
感謝S大的動腦鞭策XD 自己用很土法煉鋼的篩選寫出,S大的方法我再另外研究~ https://i.imgur.com/MXB1XuM.jpg https://i.imgur.com/0ru0UH8.jpg https://i.imgur.com/giuHFjm.jpg -- 剛剛發現這個寫法也會有個毛病 就是用OFFSET抓含有【符號的下一列 但如果條件是出現在第二列的時候 有【的總項目反而不見了... 例如圖小華的【廚房應該要出現】 卻因為拖地選項的日期不在今日內而消失 我再想想怎麼處理Orz ※ 編輯: ejeanstone (111.235.135.49 馬來西亞), 01/19/2021 11:42:22 ※ 編輯: ejeanstone (111.235.135.49 馬來西亞), 01/19/2021 12:06:59
soyoso: 如原po回文offset偏列列數固定打1判斷下一列,這是沒有用 01/19 12:26
soyoso: 的。 01/19 12:26
soyoso: 因為不確定日期是否在每一個製作專案的開始結束日期內,所 01/19 12:26
soyoso: 以要先確定每一個製作專案的範圍,範圍的起和迄如何知道, 01/19 12:26
soyoso: 以內文連結來看就是c欄的空白儲存格,起就是b欄左側為【的 01/19 12:26
soyoso: 下一列,那迄以01/12 17:17回文"函數match,搜尋true..." 01/19 12:26
soyoso: ,往下找到第一個空白儲存格的相對位置(是否減1,因不影響 01/19 12:26
soyoso: 結果,就自行調整),用於offset的高度 01/19 12:26
soyoso: 如果也不了解,match如何使用也沒有關係,再多一欄輔助欄 01/19 12:38
soyoso: ,上述回文就寫到,"範圍的起和迄如何知道,以內文連結來 01/19 12:38
soyoso: 看就是c或d欄的空白儲存格",也就是判斷當空白儲存格回傳 01/19 12:38
soyoso: 列號row,兩兩相減就是offset的高度了,迄的列號如何取得 01/19 12:38
soyoso: ,min或是判斷時就回傳於下方儲存格內 01/19 12:38
ejeanstone: 感謝S大~下午來試試看 01/19 13:09