Re: [算表] 將重複值或字串編為相同編號

看板Office作者 (SSW)時間4年前 (2020/02/08 16:03), 4年前編輯推噓0(0060)
留言60則, 2人參與, 4年前最新討論串2/2 (看更多)
※ 引述《vic12332000 (SSW)》之銘言: : 軟體:Excel : 版本:2016 : 大家好 : 昨天詢問的問題順利解決了,謝謝幫忙 : 不過今天又有了新的難題 : https://i.imgur.com/TUkafg9.jpg
: 因為我需要幫書籍重新編號 : 希望之後登打完書名能自動出現編碼(藍色欄) : 編號需符合以下規則 : 1.類別不同一開始的字母會不同 : 2.編號碼長度為3碼 : 3.若有相同的書,希望後面多個「-1、-2」作為辨別 : 4.有附件的書希望三碼後多個小寫字母 : 但我目前登打的公式沒有辦法幫我做到以下幾點: : 1.重複書籍的號碼沒辦法是同碼(紅色部分),我希望顯示的是「B004-1、B004-2」 : 2.有附件的書我不知道怎麼能讓它按附件數目增加小寫字母,我希望能顯示「D001a,D0 01 : b」 : 不曉得我的問題能不能用公式解決呢?還請幫忙 : 謝謝 先感謝soyoso大大幫忙 我試了以後發現幾個bug,想繼續請教 1. https://i.imgur.com/2ePHFD4.jpg
我嘗試插入一列並增加了第三本一樣的書 但編號卻往前跳了 (前兩本正常B005-1,B005-2,第3本卻變B004-3) 另外假設我今天買了書要編錄 一定從最底下列新增(不管有無重複) 所以我到最底下新增了一筆重複的書 https://i.imgur.com/dmihpyJ.jpg
除了編號往前跳以外 我的預想是他編號應該要是「B005-4」 2. 假設重複的書籍是有附件的(見”嗨”這3筆) 附件編號(B088b)卻無法像本體書顯示(B088-1b,B088-2b)這樣的格式 以上還請幫忙,非常謝謝 -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 223.139.11.50 (臺灣) ※ 文章網址: https://www.ptt.cc/bbs/Office/M.1581149011.A.491.html ※ 編輯: vic12332000 (223.139.11.50 臺灣), 02/08/2020 16:13:44

02/08 18:21, 4年前 , 1F
02/08 18:21, 1F

02/08 19:53, 4年前 , 2F

02/08 19:54, 4年前 , 3F
02/08 19:54, 3F

02/08 19:54, 4年前 , 4F
件那邊有點問題,是我哪裡打錯嗎?
02/08 19:54, 4F

02/08 20:38, 4年前 , 5F
02/08 20:38, 5F

02/08 21:39, 4年前 , 6F
soyoso大大,非常謝謝你,已經完全解決了,如果方便
02/08 21:39, 6F

02/08 21:39, 4年前 , 7F
的話,可不可以教一下這些欄公式的邏輯呢?
02/08 21:39, 7F

02/08 22:57, 4年前 , 8F
想法上,為:
02/08 22:57, 8F

02/08 22:57, 4年前 , 9F
i欄,看公式所在儲存格上方範圍內是否有重覆
02/08 22:57, 9F

02/08 22:57, 4年前 , 10F
j欄,看公式所在列是否為有附件的書(含附件)
02/08 22:57, 10F

02/08 22:57, 4年前 , 11F
k欄,當為上方範圍內有重覆時,回傳符合b欄和c欄的k欄值
02/08 22:57, 11F

02/08 22:57, 4年前 , 12F
無重覆時,計數類別減重覆類別和書籍(如c20、c21)
02/08 22:57, 12F

02/08 22:57, 4年前 , 13F
L欄,附件抓是從哪本書來的(回傳列號)
02/08 22:57, 13F

02/08 22:57, 4年前 , 14F
m欄,上方範圍內是否有重覆或是為附件,這方面會因計數類
02/08 22:57, 14F

02/08 22:57, 4年前 , 15F
別時重覆,判斷出來來扣除
02/08 22:57, 15F

02/08 22:57, 4年前 , 16F
n欄,有附件的書(含附件),max回傳有附件的書列號,row-
02/08 22:57, 16F

02/08 22:57, 4年前 , 17F
max來產生0起的值,97+0,char windows ANSI 字元集就為a
02/08 22:57, 17F

02/08 22:57, 4年前 , 18F
02/08 22:57, 18F

02/08 22:57, 4年前 , 19F
o、p欄,目的是將有附件的書起迄的列號列出
02/08 22:57, 19F

02/08 22:57, 4年前 , 20F
a欄,是附件,取出上方儲存格(不含英文字元)的字串,不是
02/08 22:57, 20F

02/08 22:57, 4年前 , 21F
附件,看類別和書籍名稱是否重覆。最後連接附件轉換英文字
02/08 22:57, 21F

02/08 22:57, 4年前 , 22F
元(n欄,這方面也可以不用判斷,直接以連結n欄也可以)
02/08 22:57, 22F

02/09 00:15, 4年前 , 23F
soyoso 大大,不好意思我好像又發現bug,我嘗試將公
02/09 00:15, 23F

02/09 00:15, 4年前 , 24F
式套用到另一個工作表,這個工作表裡面有較多附件,
02/09 00:15, 24F

02/09 00:15, 4年前 , 25F
也而且因為部分遺失,所以附件有多有少,問題是接著
02/09 00:15, 25F

02/09 00:16, 4年前 , 26F
附件後的下一本的編號就沒辦法正常(請見41列親職卡
02/09 00:16, 26F

02/09 00:16, 4年前 , 27F
),我猜可能是I欄(即原本m欄的公式出現1以上的數字
02/09 00:16, 27F

02/09 00:16, 4年前 , 28F
,不知道有無法解決?
02/09 00:16, 28F

02/09 00:17, 4年前 , 29F

02/09 00:17, 4年前 , 30F

02/09 09:12, 4年前 , 31F
=min(1,i欄公式)
02/09 09:12, 31F

02/09 09:13, 4年前 , 32F
另外,這二篇有關編號內回文所提供的公式都不用在公式鍵入
02/09 09:13, 32F

02/09 09:15, 4年前 , 33F
後加上組合鍵,如要加才會和另一篇 #1UF0UY_y 的回文寫到
02/09 09:15, 33F

02/09 09:15, 4年前 , 34F
哪一個儲存格需要加上組合鍵
02/09 09:15, 34F

02/09 18:40, 4年前 , 35F
有成功了!非常感謝
02/09 18:40, 35F

02/09 18:54, 4年前 , 36F
soyoso大大,不知道可否再請教
02/09 18:54, 36F

02/09 19:00, 4年前 , 37F
soyoso大大,不知道可否再請教
02/09 19:00, 37F

02/09 19:01, 4年前 , 38F
如果我要把上圖總表的項目,依類別傳回後面的各類別
02/09 19:01, 38F

02/09 19:01, 4年前 , 39F
表單,請問該怎麼做呢?我以為用lookup,但好像沒這
02/09 19:01, 39F

02/09 19:01, 4年前 , 40F
麼簡單(ー ー;)
02/09 19:01, 40F

02/09 19:04, 4年前 , 41F
index+small(if(...))的陣列公式。如不用就再加個輔助欄
02/09 19:04, 41F

02/09 19:06, 4年前 , 42F
類別&countif(以累計方式不要計數整欄),回傳上以vlookup
02/09 19:06, 42F

02/09 19:06, 4年前 , 43F
(類別&row,...)
02/09 19:06, 43F

02/09 19:59, 4年前 , 44F
我嘗試後第一列順利出來,但後面就出現錯誤 ,不知道
02/09 19:59, 44F

02/09 19:59, 4年前 , 45F
02/09 19:59, 45F

02/09 20:21, 4年前 , 46F
不用*,if內為真時的row內的列號要絕對參照
02/09 20:21, 46F

02/09 20:22, 4年前 , 47F
這公式需鍵入後配合組合鍵ctrl+shift+enter
02/09 20:22, 47F

02/09 20:26, 4年前 , 48F
我改掉了,但只出現奇數,且也把B001也代進來 https:
02/09 20:26, 48F

02/09 20:26, 4年前 , 49F
//i.imgur.com/CCeQaUG.jpg
02/09 20:26, 49F

02/09 20:27, 4年前 , 50F

02/09 20:28, 4年前 , 51F
02/09 20:21所回文的,為真時的row內的列號要絕對參照
02/09 20:28, 51F

02/09 20:52, 4年前 , 52F
我改成ROW(),有順利按編號,但還是有B***的資料跑出
02/09 20:52, 52F

02/09 20:52, 4年前 , 53F

02/09 21:01, 4年前 , 54F
為何要改row(),回文就寫row內的列號要絕對參照
02/09 21:01, 54F

02/09 21:02, 4年前 , 55F
並沒有說要改為row()
02/09 21:02, 55F

02/09 21:07, 4年前 , 56F
02/09 21:07, 56F

02/09 21:07, 4年前 , 57F
02/09 21:07, 57F

02/09 21:07, 4年前 , 58F
原po回文的連結,不就是在if為真的row內列是加上絕對參照
02/09 21:07, 58F

02/09 21:16, 4年前 , 59F
抱歉,我剛才沒有搞懂絕對參照的意思,已經了解,改
02/09 21:16, 59F

02/09 21:16, 4年前 , 60F
完有順利跑出來了,非常謝謝你
02/09 21:16, 60F
文章代碼(AID): #1UFcjJIH (Office)
文章代碼(AID): #1UFcjJIH (Office)