Board logo

標題: 請協助加入新元素 [打印本頁]

作者: 317    時間: 2011-11-8 18:40     標題: 請協助加入新元素

大大們, 好
小妹有一程式需要加入新的元素, 但我的功力太淺, 沒法成功, 請大大們協助決, 附件中有說明, 謝謝!!
[attach]8464[/attach]
作者: Hsieh    時間: 2011-11-8 20:58

回復 1# 317
  1. Sub CopyData()
  2. Dim 列 As Integer
  3. Dim 貨物編號 As String
  4. Dim 貨物名稱 As String
  5. Dim 類型 As String
  6. Dim 數量 As Integer
  7. Set d = CreateObject("Scripting.Dictionary")
  8. 列 = ActiveCell.Row
  9. 選擇用途 = Cells(列, 2)
  10. 貨物編號 = Cells(列, 3)
  11. 貨物名稱 = Cells(列, 4)
  12. 類型 = Cells(列, 5)
  13. 數量 = Cells(列, 8)

  14. With Workbooks("b.xls").Sheets("sheet1")
  15. For Each a In .[AB3:AB6]
  16. d(a.Value) = a.Interior.ColorIndex
  17. Next
  18. .[A65536].End(xlUp).Offset(1, 0).Resize(, 5).Interior.ColorIndex = d(選擇用途)
  19. .[A65536].End(xlUp).Offset(1, 0).Resize(, 5).Value = Array(選擇用途, 貨物編號, 貨物名稱, 類型, 數量)
  20. End With
  21. End Sub
複製代碼

作者: 317    時間: 2011-11-8 21:44

回復 2# Hsieh

謝謝版主大大回應,
有一些小問題, 假若當資料從a檔案填入b檔, 可否改成按種類自行插入該類別,  如第一筆輸入資料生果,第二筆紅酒,第三筆輸入時是生果, 而該筆新輸入資料自行分類插入第一筆生果下,
當資料輸入完成後, 而頁面顯示是b檔, 因用家可清色地從b檔頁面知道輸入後資料有否錯誤,
再度煩勞, 唯有衷心謝謝謝!!

    `
作者: Hsieh    時間: 2011-11-8 22:26

回復 3# 317

用排序可以嗎?
  1. Sub CopyData()
  2. Dim 列 As Integer
  3. Dim 貨物編號 As String
  4. Dim 貨物名稱 As String
  5. Dim 類型 As String
  6. Dim 數量 As Integer
  7. Set d = CreateObject("Scripting.Dictionary")
  8. 列 = ActiveCell.Row
  9. 選擇用途 = Cells(列, 2)
  10. 貨物編號 = Cells(列, 3)
  11. 貨物名稱 = Cells(列, 4)
  12. 類型 = Cells(列, 5)
  13. 數量 = Cells(列, 8)
  14. Windows("b.xls").Activate
  15. With Workbooks("b.xls").Sheets("sheet1")
  16. .Select
  17. For Each a In .[AB3:AB6]
  18. d(a.Value) = a.Interior.ColorIndex
  19. Next
  20. Set a = .[A65536].End(xlUp).Offset(1, 0).Resize(, 5)
  21. a.Interior.ColorIndex = d(選擇用途)
  22. a.Value = Array(選擇用途, 貨物編號, 貨物名稱, 類型, 數量)
  23. a.Select
  24. .Range(.[A2:E2], .[A2:E2].End(xlDown)).Sort key1:=.[A2], Header:=xlYes
  25. End With
  26. End Sub
複製代碼

作者: 317    時間: 2011-11-9 07:49

謝版主大大, 早晨
因急於開工, 故未試用版大程式, 但先行謝過, 待今晚收工才有私人時間學習, 最後祝快樂..




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