Live-Forum - Die aktuellen Beiträge
Datum
Titel
24.04.2024 19:29:30
24.04.2024 18:49:56
Anzeige
Archiv - Navigation
508to512
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
508to512
508to512
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

Datenauswertung

Datenauswertung
28.10.2004 09:00:24
TOM
Hallo Leute,
ein großes Problem:
ich habe ca. 150 Ecxel Dateien, die alle unter verschiedenen Namen abgespeichert sind.
Aus diesen Datein muss ich immer an der gleichen Stelle Zahlen kopieren und in eine "große" Auswertungstabellle eintragen.
Hat jemand eine Idee - wäre wirklich super und würde unhaimlich viel Zeit sparen !!!
Danke,
Grüße TOM

3
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
Datenauswertung
ransi
guten morgen
liegen die allein alle im selben verzeichniss?
oder sind die auf der ganzen festplatte bzw. netzwerk verstreut?
ransi
AW: Datenauswertung
Rolf
Hallo Tom,
am besten ist natürlich, wie ransi schon sagt,
wenn alle Dateien im gleichen Verzeichnis sind.
Aber mit diesen Prozeduren geht's auch
in mehreren Schritten.
FG
Rolf
Option Explicit
Dim WS As Worksheet
Dim zielbereich As Range

Sub start_copy_pgm()
Dim verz As String
Set WS = ThisWorkbook.ActiveSheet
verz = Ordner_def
ChDir verz
ShowFileList (verz)
End Sub

'Excel-Dateien öffnen

Sub ShowFileList(folderspec) 'Argumentübergabe z.B "C:\excel\Arbeitsdateien"
Dim fs, f, fc, fl As Object
Dim quellbereich As Range
Set fs = CreateObject("Scripting.FileSystemObject")
Set f = fs.GetFolder(folderspec)
Set fc = f.Files
For Each fl In fc
If fl.Type = "Microsoft Excel-Arbeitsblatt" Then
Workbooks.Open (fl.Name)
Set quellbereich = Sheets(1).Range("A1:D5")
Call kopieren(quellbereich)
Application.DisplayAlerts = False
Workbooks(fl.Name).Close
End If
Next
End Sub


Sub kopieren(quelle)
Dim r As Integer
r = WS.UsedRange.Rows.Count + 1
Set zielbereich = WS.Range("A" & r)
quelle.Copy zielbereich
End Sub

'aus Herber-Forum von K.Rola am 11.10.04

Function Ordner_def()
Dim objFolderItem As Object, strPath As String, objShell As Object
Dim varDefaultPath As Variant 'wichtig  muss Variant sein!
Dim objFolder As Object
varDefaultPath = "C:\"
Set objShell = CreateObject("Shell.Application")
Set objFolder = objShell.BrowseForFolder(0&, "Ordner auswählen...", 0&, varDefaultPath)
If objFolder Is Nothing Then End
Set objFolderItem = objFolder.Self
strPath = objFolderItem.Path
Ordner_def = strPath
End Function

Anzeige
AW: Datenauswertung
Bert
Am schnellsten mit Formelbezug und Formel in Wert umwandeln.
Bert

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige