返回列表 上一主題 發帖

如何讓總表讀取其他工作表的資料

如何讓總表讀取其他工作表的資料

總表.rar (9.2 KB)

1.如何讓總表讀取其他工作表的資料(答案如附件檔)? (因為其他工作表會不斷新增資料)

2.當1.完成後,是否能在修改總表資料時,其他工作表也會自動同步修改?

以上要辛苦老師,萬分感謝!

回復 1# av8d
試試看
  1. Option Explicit
  2. Sub Ex()
  3.     Dim Ar As Variant, E As Variant
  4.     Sheets("總表").UsedRange.Offset(1).Clear  '**清除總表中舊有資料
  5.     For Each E In Sheets
  6.         If E.Name <> "總表" Then
  7.             If IsEmpty(Ar) Then ReDim Ar(1 To 1) Else ReDim Preserve Ar(1 To UBound(Ar) + 1)
  8.             Ar(UBound(Ar)) = E.UsedRange.Offset(1)
  9.         End If
  10.     Next
  11.     For Each E In Ar
  12.         With Sheets("總表").Range("A" & Rows.Count).End(xlUp).Offset(1)
  13.             .Resize(UBound(E), UBound(E, 2)) = E
  14.         End With
  15.     Next
  16. End Sub
複製代碼
感恩的心......(在麻辣家族討論區.用心學習會有進步的)
但資源無限,後援有限,  一天1元的贊助,人人有能力.

TOP

回復 2# GBKEE


    感謝G大出馬解決問題,我自行修改了一下如下,正式的寫法還要請G大幫忙,如下:

因為A欄是日期,所以我用巨集錄下了修改所以竟變成了,第14~16行是巨集錄製的。
  1. Dim Ar As Variant, E As Variant
  2.     Sheets("總表").UsedRange.Offset(1).Clear  '**清除總表中舊有資料
  3.     For Each E In Sheets
  4.         If E.Name <> "總表" Then
  5.             If IsEmpty(Ar) Then ReDim Ar(1 To 1) Else ReDim Preserve Ar(1 To UBound(Ar) + 1)
  6.             Ar(UBound(Ar)) = E.UsedRange.Offset(1)
  7.         End If
  8.     Next
  9.     For Each E In Ar
  10.         With Sheets("總表").Range("A" & Rows.Count).End(xlUp).Offset(1)
  11.             .Resize(UBound(E), UBound(E, 2)) = E
  12.         End With
  13.     Next
  14.     Range("A2").Select
  15.     Range(Selection, Selection.End(xlDown)).Select
  16.     Selection.NumberFormatLocal = "[$-404]e/m/d"
複製代碼

TOP

回復 3# av8d


    Range("A2", [A2].End(xlDown)).NumberFormatLocal = "[$-404]e/m/d"

TOP

回復 2# GBKEE

再請問一下G大,如果我有個工作表("位置圖")不想加入總表當中,是否有辦法,萬分感激。

TOP

回復 5# av8d
  1. If E.Name <> "總表" And E.Name <> "位置圖" Then
  2. '
  3. '
  4. '
  5. Sheets("總表").UsedRange.Columns(1).NumberFormatLocal = "[$-404]e/m/d"
複製代碼
感恩的心......(在麻辣家族討論區.用心學習會有進步的)
但資源無限,後援有限,  一天1元的贊助,人人有能力.

TOP

回復 6# GBKEE

謝謝G大,如果我把按鈕放在位置圖,會出現型態不符合的訊息,.Resize...........問題出現在這段。

TOP

回復 7# av8d
錯誤是 Chart 沒有 Rows物件,Worksheet 才有Rows物件
With Sheets("總表").Range("A" & Sheets("總表").Rows.Count).End(xlUp).Offset(1)
感恩的心......(在麻辣家族討論區.用心學習會有進步的)
但資源無限,後援有限,  一天1元的贊助,人人有能力.

TOP

回復 6# GBKEE


    G大,抱歉,再次打擾, 總表.rar (21.96 KB)

他黃色標誌的地方是 .Resize(UBound(E), UBound(E, 2)) = E

再次麻煩G大,萬分感激。

TOP

回復 9# av8d


    你這裡
If E.Name <> "總表" Then
要改成
If E.Name <> "總表" And E.Name <> "位置圖" Then

TOP

        靜思自在 : 【停滯不前,終無所得】人都迷於尋找奇蹟,因而停滯不前;縱使時間再多、路再長,也了無用處,終無所得。
返回列表 上一主題