返回列表 上一主題 發帖

多資料匯整成在同data中

本帖最後由 GBKEE 於 2010-12-2 20:07 編輯
1.  附件中sheet A B兩個資料總合在DATA中  hugh0620 發表於 2010-12-2 15:14
  1. Sub Ex()  '匯整
  2.     Dim S As Worksheet
  3.     For Each S In Sheets(Array("A", "B"))
  4.         S.Range("D6").CurrentRegion.Offset(1).Copy Sheets("DATA").Range("D" & Rows.Count).End(xlUp).Cells(2)
  5.     Next
  6. End Sub
複製代碼

TOP

回復 3# hugh0620
程式複製後 請選擇一空白的工作  執行看看
其他函數請多看說明多操作 應會運用自如
Sub Ex()
    MsgBox ActiveSheet.Range("C100").End(1)(2, 1).Address '
    MsgBox ActiveSheet.Range("C100").End(xlToLeft).Cells(2, 1).Address '
   
    MsgBox ActiveSheet.Range("C100").End(2)(2, 1).Address '
    MsgBox ActiveSheet.Range("C100").End(xlToRight).Cells(2, 1).Address '
   
    MsgBox ActiveSheet.Range("C100").End(3)(2, 1).Address '
    MsgBox ActiveSheet.Range("C100").End(xlUp).Cells(2, 1).Address '
   
    MsgBox ActiveSheet.Range("C100").End(4).Address
    MsgBox ActiveSheet.Range("C100").End(xlDown).Address '
'ActiveSheet.Range("C100").End(xlDown) 已到檔案底端 如指明-> 下一列位 .Cells(2, 1) 會產生錯誤
    MsgBox ActiveSheet.Range("C100").End(4)(2, 1).Address                     '<-產生錯誤
    MsgBox ActiveSheet.Range("C100").End(xlDown).Cells(2, 1).Address    '<-產生錯誤
   
End Sub

TOP

本帖最後由 hugh0620 於 2010-12-2 17:30 編輯

回復 2# oobird


    大大 L6到W6是日期的資料 (201001-201012)

         另外在程式碼的部份~ 有不了解的大地方
      [d65536].End(3)(2, 1).Resize(UBound(a), UBound(a, 2)) = a  程式碼中的
      1.  End(3)(2, 1) 是什麼意思?  (end內的常數意思為何??)  (因為有看過大大們在使用,但是自己就是無法徹底了解,也就不會使用)
         2.  Resize 的使用方法 ?        (有查過資料說明在"移動表格或調整表格大小"  ,感覺就很奇怪)
         3.  另外一個offset的用法     (我看了大部份程式碼大部份用在資料最旁邊下一格是空格,將資料填寫進去)
         4.  在大大撰寫中並會寫copy或past等指令 , 就可把資料貼至到另一個data中 (不甚明白)

        以上,希望大大能解惑, 讓小弟能看的懂大大們在寫些什麼

TOP

看不出來月份是哪一欄,如何比對。
你目前是全部匯入。全部匯入不要循環!
  1. Private Sub CommandButton1_Click()  '匯整
  2. With Sheets("A")
  3. a = .Range(.[d7], .[w65536].End(3))
  4. With Sheets("B")
  5. b = .Range(.[d7], .[w65536].End(3))
  6. End With
  7. End With
  8. With Sheets("DATA")
  9. .[d7].Resize(UBound(a), UBound(a, 2)) = a
  10. .[d65536].End(3)(2, 1).Resize(UBound(b), UBound(b, 2)) = b
  11. End With
  12. End Sub
複製代碼

TOP

        靜思自在 : 吃苦了苦、苦盡廿來,享福了福、福盡悲來。
返回列表 上一主題