Board logo

標題: 把Excel 資料匯出為純文字 並填入固定值 [打印本頁]

作者: zero1019    時間: 2015-2-2 22:29     標題: 把Excel 資料匯出為純文字 並填入固定值

請問  我有一張excel表


表類        股票代碼        年份        數字A              數字B
A01        6271                 96                 55.6              0.27
       
股票代號   前面補4個0       
年分           後面補3個0
數字A       前面補4個0(也就是小數點前要有8碼),取到小數第三位,且小數點不要->000055600
數字B      同前 --> 000000270

最後結果-->A010000627196000000055600000000270

我想要再固定的格子塞入固定的值   並產出成txt檔~
請問VBA要怎麼才能做到

我會產出TXT檔~~但我卡再塞入固定值

或是不用VBA也可以  有甚麼函數可以達到這種功效嘛??

請各位大師幫忙~謝謝
作者: stillfish00    時間: 2015-2-3 16:33

本帖最後由 stillfish00 於 2015-2-3 16:37 編輯

回復 1# zero1019
如果要補零的都是數字可以用format函數就好,如果還包含字母,可以自己寫...
  1. Function FillStrZero(strIn As String, digit As Integer, Optional fromLeft As Boolean = True) As String
  2.   If Len(strIn) > digit Then Err.Raise vbObjectError + 9999, , "String length should not larger than " & digit & "digit."
  3.   FillStrZero = IIf(fromLeft, String(digit - Len(strIn), "0") & strIn, strIn & String(digit - Len(strIn), "0"))
  4. End Function
複製代碼
test
  1. Sub Test()
  2.   MsgBox [A2] & FillStrZero([B2], 8) & FillStrZero([C2], 5, False) & FillStrZero(Round([D2] * 1000), 9) & FillStrZero(Round([E2] * 1000), 9)
  3. End Sub
複製代碼

作者: 電暖爐    時間: 2015-2-4 22:07

回復 1# zero1019
  1. =A2&TEXT(B2,REPT("0",8))&C2*1000&TEXT(D2*1000,REPT("0",9))&TEXT(E2*1000,REPT("0",9))
複製代碼





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