Board logo

標題: [發問] 問題請教 [打印本頁]

作者: eg0802    時間: 2013-7-24 11:04     標題: 問題請教

本帖最後由 GBKEE 於 2013-7-24 11:18 編輯

各位神大
附件有一Kohl's_APT.9 - 2013 - 0424檔案 , 裡面有許多工作表(款式名稱)
小弟想整理成如總表的樣子(只擷取各個sty  主料成本/副料成本/cmp),請問各位大大有辦法嗎?
[attach]15539[/attach]
作者: GBKEE    時間: 2013-7-24 12:46

回復 1# eg0802
試試看
  1. Option Explicit
  2. Sub EX()
  3.     Dim Sh  As Worksheet, Ar(), i As Integer, ii As Integer, A(3)
  4.     ReDim Preserve Ar(i)
  5.     Ar(i) = Array("品項", "TOTAL MATERIALS COST", "TOTAL TRIM COST", "CMP")    '要整理的項目
  6.     For Each Sh In ThisWorkbook.Sheets                                     '物件: 這活頁簿中工作表的集合
  7.         If Sh.Name <> "總表" Then
  8.             With Sh
  9.                A(0) = Sh.Name                                              '指定元素的值
  10.                For ii = 1 To 3
  11.                     'A(ii) = .Cells.Find(Ar(0)(ii), LookAt:=xlWhole).Row
  12.                     '*** 正常要 xlWhole(字串完全相等) -> 才會找到正確的儲存格         ****
  13.                     '****這裡代入xlParte(部分字串相等) ,因工作中的"CMP" 為 " CMP "    ****
  14.                     A(ii) = .Cells.Find(Ar(0)(ii), LookAt:=xlPart).Row      '找到字串的列號
  15.                     A(ii) = .Range("G" & A(ii))                            '指定元素的值: G欗&字串的列號
  16.                Next
  17.                i = i + 1
  18.                 ReDim Preserve Ar(i)                                       '重新配置陣列元素的維數(Preserve 保留舊有的元素)
  19.                 Ar(i) = A
  20.             End With
  21.         End If
  22.     Next
  23.     With Sheets("總表")
  24.         .Activate
  25.         .Cells.Clear
  26.         .[A1].Resize(i + 1, UBound(A) + 1) = Application.Transpose(Application.Transpose(Ar))
  27.     End With
  28. End Sub
複製代碼

作者: eg0802    時間: 2013-7-25 22:09

回復 2# GBKEE


    感謝G大  可以用 ^^ Orz




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