Board logo

標題: [發問] 資料問題 [打印本頁]

作者: jj369963    時間: 2012-3-25 20:50     標題: 資料問題

Dear 您好:

Dear:

因為在資料處裡上不知如何快速處理,是否可以寫成公式之類的,想請問大家。

題目如下

A1('123'=) ('125'=) ( '126'=) ('128'=) ('12'=) ( '17'=) ('13'=) ('19'=) ( '6'=)
A2('23'=) ('25'=) ( '26'=) ('28'=) ('2'=) ( '7'=) ('13'=) ('9'=) ( '6'=)
A3('13'=) ('15'=) ( '16'=) ('18'=) ('12'=) ( '17'=) ('13'=) ('19'=) ( '6'=)
A4('1'=) ('15'=) ( '120'=) ('122'=) ('129'=) ( '7'=) ('3'=) ('9'=) ( '6'=)

想變成

A1('123'=123) ('125'=125) ( '126'=126) ('128'=128) ('12'=12') ( '17'=17) ('13'=13) ('19'=19) ( '6'=6)
A2('23'=23) ('25'=25) ( '26'=26) ('28'=28) ('2'=2') ( '7'=7) ('13'=13) ('9'=9) ( '6'=6)
A3('13'=13) ('15'=15) ( '16'=16) ('18'=18) ('12'=12) ( '17'=17) ('13'=13) ('19'=19) ( '6'=6)
A4('1'=1) ('15'=15) ( '120'=120) ('122'=122) ('129'=129) ( '7'=7) ('3'=3) ('9'=9) ( '6'=6)

因為資料很多,所以想寫公式作取代,就是在原資料括號內的等於後面加上跟前面一樣的數字,想說用萬用字元搜尋('*'=*),但這樣似乎不行,想請教各位,是否有快速的方法呢,因為資料太多頁了

再麻煩解答

謝謝您
作者: Hsieh    時間: 2012-3-25 23:26

回復 1# jj369963
有沒有快速方法?倒是還沒想出來
用公式還有點複雜
1、選取B1儲存格
2、建立4個名稱
      k=(COLUMN(Sheet1!A$1)-1)*2+1
      x=(LEN(Sheet1!$A1)-LEN(SUBSTITUTE(Sheet1!$A1,"'","")))/2
      y=MID(Sheet1!$A1,SMALL(ar,k)+1,SMALL(ar,k+1)-SMALL(ar,k)-1)
      ar=SMALL(IF(MID(Sheet1!$A1,ROW(INDIRECT("A1:A"&LEN(Sheet1!$A1))),1)="'",ROW(INDIRECT("A1:A"&LEN(Sheet1!$A1))),""),ROW(INDIRECT("A1:A"&x*2)))
3、B1公式="('"&y&"'="&y&") "
向下向右複製到J4
4、K1公式=B1&C1&D1&E1&F1&G1&H1&I1&J1
向下複製
[attach]10137[/attach]
作者: chin15    時間: 2012-3-25 23:38

本帖最後由 chin15 於 2012-3-25 23:40 編輯

相當有難度,還是寫vba快吧。
  1. Sub test()
  2.     Cells.Replace " '", "'"
  3.     For Each a In [a:a].SpecialCells(2)
  4.         x = Split(a & " ", "(")
  5.         For i = 1 To UBound(x)
  6.             m = Val(Mid(x(i), 2))
  7.             x(i) = "(" & Left(x(i), Len(x(i)) - 2) & m & Right(x(i), 2)
  8.         Next
  9.         a(1, 2) = Join(x)
  10.     Next
  11. End Sub
複製代碼
[attach]10138[/attach]
作者: jj369963    時間: 2012-3-27 22:38

回復 3# chin15


    沒有用過VBA,但是試著用大大提供的程式,果然成功,真是太神奇了,會再進修VBA的部份,來加強自己。




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