- 帖子
- 5923
- 主題
- 13
- 精華
- 1
- 積分
- 5986
- 點名
- 0
- 作業系統
- win10
- 軟體版本
- Office 2010
- 閱讀權限
- 150
- 性別
- 男
- 來自
- 台灣基隆
- 註冊時間
- 2010-5-1
- 最後登錄
- 2022-1-23
        
|
本帖最後由 GBKEE 於 2010-10-5 09:17 編輯
回復 1# amu1129
你的錯誤是 If (Wb.Worksheets("Sheet1").Cells(i+3, 2).Value) Mod 100 = 0 Then 沒有加3 其他都有加3
檔案必須是開啟的 才可以執行. 於程式最後關閉掉就可以
如要用按鈕執行 請 刪掉Sub Workbook_Open 的程式 將程式碼複製到 按鈕的程式裡
另外我想相同的產品數量加總顯示一次就好 程式碼如下:- Private Sub Workbook_Open()
- Dim Wb As Workbook, d As Object, i%, ii%
- Set Wb = Workbooks.Open("C:\Documents and Settings\123\桌面\Test\B.xls")
- Set d = CreateObject("Scripting.Dictionary")
- For i = 1 To 30
- If d.exists(Wb.Worksheets("Sheet1").Cells(i + 3, 1).Value) = False And Wb.Worksheets("Sheet1").Cells(i + 3, 1) <> "" Then
- d(Wb.Worksheets("Sheet1").Cells(i + 3, 1).Value) = ""
- ii = ii + 1
- ThisWorkbook.Worksheets("Sheet1").Cells(2, 4 * ii - 2) = Wb.Worksheets("Sheet1").Cells(i + 3, 1).Value
- If (Wb.Worksheets("Sheet1").Cells(i + 3, 2).Value) Mod 100 = 0 Then
- ThisWorkbook.Worksheets("Sheet1").Cells(3, 4 * ii - 2) = "(目標 " & (Wb.Worksheets("Sheet1").Cells(i + 3, 2).Value) / 1000 & "k)"
- Else
- ThisWorkbook.Worksheets("Sheet1").Cells(3, 4 * ii - 2) = "(目標 " & (Wb.Worksheets("Sheet1").Cells(i + 3, 2).Value) & "units)"
- End If
- End If
- Next
- Wb.Close '關閉檔案
- End Sub
複製代碼 |
|