iT邦幫忙

1

Excel「&」用於不同格式

20171201
由於問題多,各位幫大都有幫到我,我給第一個回答我的哦,真的很謝謝各位
另外分享給其他還不知道的人我寫出來的程式,只是堪用而已
https://ithelp.ithome.com.tw/upload/images/20171201/20091324C2SytjZwJ9.jpg
而廠商要求的編碼則是直接定義如下:小於10都是直接顯示數字、超過後就開始自定義
=IF(B5<10,B5,LOOKUP(B5,{10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31},{"A","B","C","D","E","F","G","H","J","K","L","M","N","P","Q","R","S","T","U","V","W","X","Z"}))

各位幫大您好,
小弟最近因為特殊條件的條碼傷透腦筋,
而TSC Special Edition BarTender 2016 R4軟體無法達成,
所以最後把腦筋動到Excel上了,但在最後卡關在此請求協助....
https://ithelp.ithome.com.tw/upload/images/20171129/20091324P4YNiegCkl.jpg
A和C為通用格式、B和D為自訂格式,用&來連接起來後B跟D就會變成不是我要的
另外廠商要把B每兩位改成16進制..(10=A、11=B、12=C...~)
不知道有高手可以救救我嘛~
就是改成正確那一欄的樣子
萬分感恩~/images/emoticon/emoticon41.gif
若排版凌亂或看不懂請在跟我說,不好意思,謝謝~

附上編碼圖,不知道是不是16進位,可能我搞錯了,SOR~
https://ithelp.ithome.com.tw/upload/images/20171129/20091324QMIp0EMsXn.jpg

F1=A1&Text(B1,"yymd")&C1&Text(D1,"00000")
改 16進制那邊很怪,因為 16進制 只有 0~F,你兩位數所以,實際上 兩位轉一個16進制,你也是需要六個字元才能表示三組數字
看你正確結果 161129 = GBV ,很顯然你的編碼規則不是 16進制的,因為 DEC 16 基本上應該是 HEX 10 才對,你卻轉換成 G,
如果你能說清楚,用TEXT()這個就很做很多事情了
p04210421 iT邦新手 5 級 ‧ 2017-11-29 16:46:32 檢舉
發哥您好,我可能搞錯了吧,SOR,我有附上編碼圖了,
剛剛正在研究TEXT(),但都怪怪的,哈哈
先謝謝您囉~
0
froce
iT邦研究生 4 級 ‧ 2017-11-29 15:53:27
最佳解答

1.所有的儲存格請用文字存。這樣才不會因為日期轉換跑掉。
2.B的轉換公式:=DEC2HEX(VALUE(LEFT(B1,2)))&DEC2HEX(VALUE(MID(B1,3,2)))&DEC2HEX(VALUE(RIGHT(B1,2)))

p04210421 iT邦新手 5 級 ‧ 2017-11-29 16:39:57 檢舉

先謝謝您了
但為什麼我顯示出來為2A463 >分開為 2A 46 3
我剛剛在測試把16 11 29分開抓出後再轉換再&串起來
16 =TEXT(B1,LEFT(B1,2))
目前卡在11 29抓不出來 mid跟right不行 哈哈
我會在試試看你提供的程式 謝謝囉

0
erwinho
iT邦新手 5 級 ‧ 2017-11-29 16:37:04

D的部份改為 Text(D1, "00000")

p04210421 iT邦新手 5 級 ‧ 2017-11-29 16:47:31 檢舉

抱歉,小弟蠢到沒發現= =
謝謝您啦~

0
海綿寶寶
iT邦超人 1 級 ‧ 2017-11-29 18:08:22

A,C,D都有人回答了
我做個B欄的查表

H2=1
H3=2
H4=3
H5=4
H6=5
H7=6
H8=7
H9=8
H10=9
H11=A
H12=B
H13=C
H14=D
H15=E
H16=F
H17=G
H18=H
H19=J
H20=K
H21=L
H22=M
H23=N
H24=P
H25=Q
H26=R
H27=S
H28=T
H29=U
H30=V
H31=W
H32=X

F1=OFFSET($H$1,MID(B1,1,2),0)&OFFSET($H$1,MID(B1,3,2),0)&OFFSET($H$1,MID(B1,5,2),0)
erwinho iT邦新手 5 級 ‧ 2017-11-30 10:01:31 檢舉

補充另一個用法
=MID("123456789ABCDEFGHIJKLMNOPQRSTUVWX",(B1,1,2),1)&
MID("123456789ABCDEFGHIJKLMNOPQRSTUVWX",(B1,3,2),1) &
MID("123456789ABCDEFGHIJKLMNOPQRSTUVWX",(B1,5,2),1)

好用法
而且你沒有實際測試過
因為他沒有用 I,O 兩個字元
/images/emoticon/emoticon12.gif

我要發表回答

立即登入回答