AW: viele Dateien summieren
17.12.2007 15:54:00
fcs
Hallo Yasmine,
wenn die 1. Tabelle immer den gleichen Namen hat dan geht es mit einem der beiden Makros.
Falls die Namen der Tabelle unterschiedlich sind, dann fragt Excel in einem Auswahldialog nach dem Tabellennamen. Dann muss du halt 200 schnelle Klicks auf ok machen.
Gruß
Franz
Sub test1()
'Schreibt Formeln mit Verknüpfungen in Spalte A der aktiven Tabelle _
und bildet Summe
Dim Summe As Double, wks As Worksheet
Dim i As Integer, Tabelle As String, Zelle As String
Set wks = ActiveSheet
Pfad = "C:\Lokale Daten\Test"
Tabelle = "Tabelle1" 'Name der Tabelle aus der Zelle summiert werden soll
Zelle = "A1" 'Zelle die summiert werden soll
wks.Columns(1).Clear
With Application.FileSearch
.LookIn = Pfad
.FileType = msoFileTypeExcelWorkbooks
.Execute
For i = 1 To .FoundFiles.Count
wks.Cells(i, 1).Formula = "='" & Pfad & "\[" & Mid(.FoundFiles(i), _
Len(Pfad) + 2) & "]" & Tabelle & "'!" & Zelle
Next
wks.Cells(.FoundFiles.Count + 1, 1).Formula = "=sum(A1:A" & .FoundFiles.Count & ")"
MsgBox "Ergebnis: " & wks.Cells(.FoundFiles.Count + 1, 1).Value
End With
End Sub
Sub test2()
'Schreibt formeln mit verknüpfung in Zelle A1 und Summe jeweils in B1
Dim Summe As Double, wks As Worksheet
Dim i As Integer, Tabelle As String, Zelle As String
On Error Resume Next 'überspringt Zellen mit text
Set wks = ActiveSheet
Pfad = "C:\Lokale Daten\Test"
Tabelle = "Tabelle1" 'Name der Tabelle aus der Zelle summiert werden soll
Zelle = "A1" 'Zelle die summiert werden soll
wks.Cells(1, 1).Clear
With Application.FileSearch
.LookIn = Pfad
.FileType = msoFileTypeExcelWorkbooks
.Execute
For i = 1 To .FoundFiles.Count
wks.Cells(1, 1).Formula = "='" & Pfad & "\[" & Mid(.FoundFiles(i), _
Len(Pfad) + 2) & "]" & Tabelle & "'!" & Zelle
wks.Cells(1, 1).Value = wks.Cells(1.1).Value
Summe = Summe + wks.Cells(1, 1).Value
wks.Cells(1, 2).Value = Summe
Next
MsgBox "Ergebnis: " & Summe
End With
End Sub