Live-Forum - Die aktuellen Beiträge
Datum
Titel
24.04.2024 19:29:30
24.04.2024 18:49:56
Anzeige
Archiv - Navigation
584to588
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
584to588
584to588
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

Arbeitsmappen in eine neue Tabelle einlesen

Arbeitsmappen in eine neue Tabelle einlesen
15.03.2005 08:53:49
roneburger
Hallo,
habe ein Problem mit dem ich nicht weiter komme.
Ich habe eine Tabelle wo Excelarbeitsmappen eingelesen werden.
In der Zelle B1 steht die Pfadangabe für das später folgende Makro.
Ich habe die Tabelle bis jetzt auf meinem lokalen Rechner auf C:\ betrieben.
Die Arbeitsmappen die einzulesen sind liegen unter C:\Aktiv
Das funktioniert einwandfrei.
Wenn ich die Tabelle und die einzulesenden Arbeitsmappen auf den Server packe und den Pfad in B1 auf S:\(Server) ändere bekomme ich nur noch die Sanduhr zu sehen und die Dateien werden nicht eingelesen.
Was mache ich falsch?
Hier das Makro:
'MODUL 1 - ALLGEMEINES MODUL - Mappen und Zellen in einem Ordner auslesen
Option Explicit

Sub MappenEinesVerzeichnisListenZellInhaltAusgeben()
'TASTE AUSLESEN=ZWECK: EINLESEN VON ALLEN DATEIEN EINES ORDNERS UND EINLESEN BESTIMMTER TABELLEN UND ZELLEN IN DIESEN ORDNERN
'_______________________________________________________________________________________________________________________________
'In Zelle B1 wird der zu durchsuchende Ordner angegeben. Hier C:\Kiesinger\Kiesinger Aktiv
'_______________________________________________________________________________________________________________________________
'In B2 bis AU2 wird angegeben welche Tabelle der gefundenen Dateien ausgelesen werden sollen z.B "Vorgabe"
'_______________________________________________________________________________________________________________________________
'IN B3 bis AU3 wird angegeben welche Zelle ider der Tabelle ausgelesen werden soll z.B "E6"
'_______________________________________________________________________________________________________________________________
Dim iMZ As Integer    ' Mappenzähler
Dim iZZ As Integer    ' Zeilenzähler
Dim sName As String   ' Name der Mappe
Dim sPfad As String   ' Pfad/Ordner
'Abfrage der Checkbox 1 ob  Taste Auslesen gesperrt oder frei
If ActiveSheet.CheckBox1 = False Then Exit Sub
For iZZ = 1 To 3
If Cells(iZZ, 2).Value = "" Or Len(Cells(iZZ, 2)) < 2 Then
MsgBox "Bitte füllen Sie alle Felder aus." & vbCrLf & _
"Nicht akzeptierte Angabe in Zelle " & Cells(2, iZZ).Address(0, 0)
Exit Sub
End If
Next iZZ
On Error GoTo MappenEinesVerzeichnisListenZellInhaltAusgeben_Error
ActiveSheet.Unprotect Password:="xxxx" 'Hier Aufhebung des Blattschutzes!
Application.ScreenUpdating = False
iZZ = 6
Range(Range("A6"), Range("AU" & Range("A6").End(xlDown).Row)).ClearContents 'Löschanweisung der Zellen bis "AU" für zu
'aktualiesierende Zellen
If Right(Range("B1").Value, 1) <> "\" Then
sPfad = Range("B1").Value & "\"
Else
sPfad = Range("B1").Value
End If
With Application.FileSearch
.LookIn = sPfad
.FileType = msoFileTypeExcelWorkbooks
.Execute
'WICHTIG= Nummer der Zelle angeben hier 1)2)3)4)5)6)7)8)9)10)....43!
For iMZ = 1 To .FoundFiles.Count
sName = Mid(.FoundFiles(iMZ), Len(sPfad) + 1)
Cells(iZZ, 1).Value = Left(sName, Len(sName) - 4)
Cells(iZZ, 2).Formula = "='" & sPfad & "[" & sName & "]" & Range("B2").Value & _
"'!" & Range("B3").Value 'Liest die Tabelle und die Zelle der gefundenen Arbeutsmappen aus vorgebenen Ordner in (B1)
Cells(iZZ, 3).Formula = "='" & sPfad & "[" & sName & "]" & Range("C2").Value & _
"'!" & Range("C3").Value 'Liest die Tabelle und die Zelle der gefundenen Arbeutsmappen aus vorgebenen Ordner in (B1)
Cells(iZZ, 4).Formula = "='" & sPfad & "[" & sName & "]" & Range("D2").Value & _
"'!" & Range("D3").Value 'Liest die Tabelle und die Zelle der gefundenen Arbeutsmappen aus vorgebenen Ordner in (B1)
Cells(iZZ, 5).Formula = "='" & sPfad & "[" & sName & "]" & Range("E2").Value & _
"'!" & Range("E3").Value 'Liest die Tabelle und die Zelle der gefundenen Arbeutsmappen aus vorgebenen Ordner in (B1)
Cells(iZZ, 6).Formula = "='" & sPfad & "[" & sName & "]" & Range("F2").Value & _
"'!" & Range("F3").Value 'Liest die Tabelle und die Zelle der gefundenen Arbeutsmappen aus vorgebenen Ordner in (B1)
Cells(iZZ, 7).Formula = "='" & sPfad & "[" & sName & "]" & Range("G2").Value & _
"'!" & Range("G3").Value 'Liest die Tabelle und die Zelle der gefundenen Arbeutsmappen aus vorgebenen Ordner in (B1)
Cells(iZZ, 8).Formula = "='" & sPfad & "[" & sName & "]" & Range("H2").Value & _
"'!" & Range("H3").Value 'Liest die Tabelle und die Zelle der gefundenen Arbeutsmappen aus vorgebenen Ordner in (B1)
Cells(iZZ, 9).Formula = "='" & sPfad & "[" & sName & "]" & Range("I2").Value & _
"'!" & Range("I3").Value 'Liest die Tabelle und die Zelle der gefundenen Arbeutsmappen aus vorgebenen Ordner in (B1)
Cells(iZZ, 10).Formula = "='" & sPfad & "[" & sName & "]" & Range("J2").Value & _
"'!" & Range("J3").Value 'Liest die Tabelle und die Zelle der gefundenen Arbeutsmappen aus vorgebenen Ordner in (B1)
Cells(iZZ, 11).Formula = "='" & sPfad & "[" & sName & "]" & Range("K2").Value & _
"'!" & Range("K3").Value 'Liest die Tabelle und die Zelle der gefundenen Arbeutsmappen aus vorgebenen Ordner in (B1)
Cells(iZZ, 12).Formula = "='" & sPfad & "[" & sName & "]" & Range("L2").Value & _
"'!" & Range("L3").Value 'Liest die Tabelle und die Zelle der gefundenen Arbeutsmappen aus vorgebenen Ordner in (B1)
Cells(iZZ, 13).Formula = "='" & sPfad & "[" & sName & "]" & Range("M2").Value & _
"'!" & Range("M3").Value 'Liest die Tabelle und die Zelle der gefundenen Arbeutsmappen aus vorgebenen Ordner in (B1)
Cells(iZZ, 14).Formula = "='" & sPfad & "[" & sName & "]" & Range("N2").Value & _
"'!" & Range("N3").Value 'Liest die Tabelle und die Zelle der gefundenen Arbeutsmappen aus vorgebenen Ordner in (B1)
Cells(iZZ, 15).Formula = "='" & sPfad & "[" & sName & "]" & Range("O2").Value & _
"'!" & Range("O3").Value 'Liest die Tabelle und die Zelle der gefundenen Arbeutsmappen aus vorgebenen Ordner in (B1)
Cells(iZZ, 16).Formula = "='" & sPfad & "[" & sName & "]" & Range("P2").Value & _
"'!" & Range("P3").Value 'Liest die Tabelle und die Zelle der gefundenen Arbeutsmappen aus vorgebenen Ordner in (B1)
Cells(iZZ, 17).Formula = "='" & sPfad & "[" & sName & "]" & Range("Q2").Value & _
"'!" & Range("Q3").Value 'Liest die Tabelle und die Zelle der gefundenen Arbeutsmappen aus vorgebenen Ordner in (B1)
Cells(iZZ, 18).Formula = "='" & sPfad & "[" & sName & "]" & Range("R2").Value & _
"'!" & Range("R3").Value 'Liest die Tabelle und die Zelle der gefundenen Arbeutsmappen aus vorgebenen Ordner in (B1)
Cells(iZZ, 19).Formula = "='" & sPfad & "[" & sName & "]" & Range("S2").Value & _
"'!" & Range("S3").Value 'Liest die Tabelle und die Zelle der gefundenen Arbeutsmappen aus vorgebenen Ordner in (B1)
Cells(iZZ, 20).Formula = "='" & sPfad & "[" & sName & "]" & Range("T2").Value & _
"'!" & Range("T3").Value 'Liest die Tabelle und die Zelle der gefundenen Arbeutsmappen aus vorgebenen Ordner in (B1)
Cells(iZZ, 21).Formula = "='" & sPfad & "[" & sName & "]" & Range("U2").Value & _
"'!" & Range("U3").Value 'Liest die Tabelle und die Zelle der gefundenen Arbeutsmappen aus vorgebenen Ordner in (B1)
Cells(iZZ, 22).Formula = "='" & sPfad & "[" & sName & "]" & Range("V2").Value & _
"'!" & Range("V3").Value 'Liest die Tabelle und die Zelle der gefundenen Arbeutsmappen aus vorgebenen Ordner in (B1)
Cells(iZZ, 23).Formula = "='" & sPfad & "[" & sName & "]" & Range("W2").Value & _
"'!" & Range("W3").Value 'Liest die Tabelle und die Zelle der gefundenen Arbeutsmappen aus vorgebenen Ordner in (B1)
Cells(iZZ, 24).Formula = "='" & sPfad & "[" & sName & "]" & Range("X2").Value & _
"'!" & Range("X3").Value 'Liest die Tabelle und die Zelle der gefundenen Arbeutsmappen aus vorgebenen Ordner in (B1)
Cells(iZZ, 25).Formula = "='" & sPfad & "[" & sName & "]" & Range("Y2").Value & _
"'!" & Range("Y3").Value 'Liest die Tabelle und die Zelle der gefundenen Arbeutsmappen aus vorgebenen Ordner in (B1)
Cells(iZZ, 26).Formula = "='" & sPfad & "[" & sName & "]" & Range("Z2").Value & _
"'!" & Range("Z3").Value 'Liest die Tabelle und die Zelle der gefundenen Arbeutsmappen aus vorgebenen Ordner in (B1)
Cells(iZZ, 27).Formula = "='" & sPfad & "[" & sName & "]" & Range("AA2").Value & _
"'!" & Range("AA3").Value 'Liest die Tabelle und die Zelle der gefundenen Arbeutsmappen aus vorgebenen Ordner in (B1)
Cells(iZZ, 28).Formula = "='" & sPfad & "[" & sName & "]" & Range("AB2").Value & _
"'!" & Range("AB3").Value 'Liest die Tabelle und die Zelle der gefundenen Arbeutsmappen aus vorgebenen Ordner in (B1)
Cells(iZZ, 29).Formula = "='" & sPfad & "[" & sName & "]" & Range("AC2").Value & _
"'!" & Range("AC3").Value 'Liest die Tabelle und die Zelle der gefundenen Arbeutsmappen aus vorgebenen Ordner in (B1
Cells(iZZ, 30).Formula = "='" & sPfad & "[" & sName & "]" & Range("AD2").Value & _
"'!" & Range("AD3").Value 'Liest die Tabelle und die Zelle der gefundenen Arbeutsmappen aus vorgebenen Ordner in (B1
Cells(iZZ, 31).Formula = "='" & sPfad & "[" & sName & "]" & Range("AE2").Value & _
"'!" & Range("AE3").Value 'Liest die Tabelle und die Zelle der gefundenen Arbeutsmappen aus vorgebenen Ordner in (B1)
Cells(iZZ, 32).Formula = "='" & sPfad & "[" & sName & "]" & Range("AF2").Value & _
"'!" & Range("AF3").Value 'Liest die Tabelle und die Zelle der gefundenen Arbeutsmappen aus vorgebenen Ordner in (B1)
Cells(iZZ, 33).Formula = "='" & sPfad & "[" & sName & "]" & Range("AG2").Value & _
"'!" & Range("AG3").Value 'Liest die Tabelle und die Zelle der gefundenen Arbeutsmappen aus vorgebenen Ordner in (B1)
Cells(iZZ, 34).Formula = "='" & sPfad & "[" & sName & "]" & Range("AH2").Value & _
"'!" & Range("AH3").Value 'Liest die Tabelle und die Zelle der gefundenen Arbeutsmappen aus vorgebenen Ordner in (B1)
Cells(iZZ, 35).Formula = "='" & sPfad & "[" & sName & "]" & Range("AI2").Value & _
"'!" & Range("AI3").Value 'Liest die Tabelle und die Zelle der gefundenen Arbeutsmappen aus vorgebenen Ordner in (B1
Cells(iZZ, 36).Formula = "='" & sPfad & "[" & sName & "]" & Range("AJ2").Value & _
"'!" & Range("AJ3").Value 'Liest die Tabelle und die Zelle der gefundenen Arbeutsmappen aus vorgebenen Ordner in (B1
Cells(iZZ, 37).Formula = "='" & sPfad & "[" & sName & "]" & Range("AK2").Value & _
"'!" & Range("AK3").Value 'Liest die Tabelle und die Zelle der gefundenen Arbeutsmappen aus vorgebenen Ordner in (B1)
Cells(iZZ, 38).Formula = "='" & sPfad & "[" & sName & "]" & Range("AL2").Value & _
"'!" & Range("AL3").Value 'Liest die Tabelle und die Zelle der gefundenen Arbeutsmappen aus vorgebenen Ordner in( B1)
Cells(iZZ, 39).Formula = "='" & sPfad & "[" & sName & "]" & Range("AM2").Value & _
"'!" & Range("AM3").Value 'Liest die Tabelle und die Zelle der gefundenen Arbeutsmappen aus vorgebenen Ordner in (B1)
Cells(iZZ, 40).Formula = "='" & sPfad & "[" & sName & "]" & Range("AN2").Value & _
"'!" & Range("AN3").Value 'Liest die Tabelle und die Zelle der gefundenen Arbeutsmappen aus vorgebenen Ordner in (B1)
Cells(iZZ, 41).Formula = "='" & sPfad & "[" & sName & "]" & Range("AO2").Value & _
"'!" & Range("AO3").Value 'Liest die Tabelle und die Zelle der gefundenen Arbeutsmappen aus vorgebenen Ordner in (B1)
Cells(iZZ, 42).Formula = "='" & sPfad & "[" & sName & "]" & Range("AP2").Value & _
"'!" & Range("AP3").Value 'Liest die Tabelle und die Zelle der gefundenen Arbeutsmappen aus vorgebenen Ordner in (B1)
Cells(iZZ, 43).Formula = "='" & sPfad & "[" & sName & "]" & Range("AQ2").Value & _
"'!" & Range("AQ3").Value 'Liest die Tabelle und die Zelle der gefundenen Arbeutsmappen aus vorgebenen Ordner in (B1)
Cells(iZZ, 44).Formula = "='" & sPfad & "[" & sName & "]" & Range("AR2").Value & _
"'!" & Range("AR3").Value 'Liest die Tabelle und die Zelle der gefundenen Arbeutsmappen aus vorgebenen Ordner in (B1)
Cells(iZZ, 45).Formula = "='" & sPfad & "[" & sName & "]" & Range("AS2").Value & _
"'!" & Range("AS3").Value 'Liest die Tabelle und die Zelle der gefundenen Arbeutsmappen aus vorgebenen Ordner in (B1)
Cells(iZZ, 46).Formula = "='" & sPfad & "[" & sName & "]" & Range("AT2").Value & _
"'!" & Range("AT3").Value 'Liest die Tabelle und die Zelle der gefundenen Arbeutsmappen aus vorgebenen Ordner in (B1)
Cells(iZZ, 47).Formula = "='" & sPfad & "[" & sName & "]" & Range("AU2").Value & _
"'!" & Range("AU3").Value 'Liest die Tabelle und die Zelle der gefundenen Arbeutsmappen aus vorgebenen Ordner in (B1)
iZZ = iZZ + 1
Next iMZ
End With
Exit_here:
'Columns("A").AutoFit 'AutoFit bewirkt das die Spalte "A" sich der Grösse automatisch anpasst!
ActiveSheet.Protect Password:="xxxx", DrawingObjects:=True, Contents:=True, Scenarios:=True 'Hier Einschalten des Blattschutzes!
Application.ScreenUpdating = True
On Error GoTo 0
Exit Sub
MappenEinesVerzeichnisListenZellInhaltAusgeben_Error:
MsgBox "Fehler " & Err.Number & " (" & Err.Description & ")" & vbCrLf & _
"in  der Prozedur MappenEinesVerzeichnisListenZellInhaltAusgeben des Moduls Modul1"
Resume Exit_here
End Sub

8
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Arbeitsmappen in eine neue Tabelle einlesen
15.03.2005 09:08:47
Chris
Hi,
evtl. liegt es daran, dass du keinen extra Ordner auf dem Server genommen hast, dadurch werden alle Excel-Mappen auf dem Server betrachtet. Ich würde einen neuen Ordner anlegen und den Pfad entsprechend ändern!
gruss
Chris
AW: Arbeitsmappen in eine neue Tabelle einlesen
15.03.2005 10:03:29
roneburger
Hallo Chris,
die Tabelle liegt auf dem Server S:\Personal\
Die Arbeitsmappen liegen auf dem Server S:\Personal\Kiesinger\Personal Aktiv.
Dieser Pfad für die zu suchenden Arbeitsmappen ist auch in B1 der Tabelle angegeben.
Ander Makros wie z.B. Mitarbeiter neu anlegen funktionieren auch mit der Pfadangabe.
Fällt jemanden dazu noch etwas ein, ich hab keine Ahnung mehr.
Gruss
roneburger
Anzeige
AW: Arbeitsmappen in eine neue Tabelle einlesen
15.03.2005 10:19:41
Chris
Hi,
ich würde vorschlagen du gehst im Makroeditor mal in Zeile *With Application.FileSearch*
und drückst dort dann wird die Zeile rot. Dann starte mal das Makro, es wird nur bis zu dieser Zeile ausgeführt und es erscheint das Makrofenster, dann ist die Zeile gelb. Als nächstes würde ich mal mit schrittweise weitergehen. Vielleicht findest du dann die Stelle an der er so lange braucht - ich vermute es ist die Zeile * .LookIn = sPfad*.
Wenn nicht geh mal weiter bis eine Zeile nach * For iMZ = 1 To .FoundFiles.Count* und geh mit der Maus auf *.FoundFiles.Count* dann wird dir die Anzahl der gefundenen Exceldateien angezeigt - ist wahrscheinlich ziemlich hoch.
Falls nicht - gehen mir langsam die Ideen aus :o)
Gruss
Chris
Anzeige
AW: Arbeitsmappen in eine neue Tabelle einlesen
15.03.2005 10:39:56
roneburger
Hallo,
ich habe leider im Moment keinen Zugriff auf den Server. Kann ich mich noch mal melden wenn ich dort was erreicht habe?
Gruss
roneburger
AW: Arbeitsmappen in eine neue Tabelle einlesen
15.03.2005 11:55:06
Chris
Klar,
ich bin nachher auf einem ext. Termin, kann also sein, dass ich erst Morgen wieder reinschau - behalte dich aber im Blick. Außerdem hat bis dahin vielleicht auch schon ein anderer ne Idee.
Viel Erfolg beim Probieren
Chris
AW: Arbeitsmappen in eine neue Tabelle einlesen
15.03.2005 16:56:12
roneburger
Hallo,
es ist tatsächlich so das ich für das einlesen von 6 Dateien ca 2,5 Minuten brauche. Es funktioniert also, nur super langsam. Lässt sich da was ändern.
Gruss
roneburger
AW: Arbeitsmappen in eine neue Tabelle einlesen
15.03.2005 18:52:29
Chris
Hi,
ich denke mal es müsste an der Netzwerkverbindung zum Server liegen. Wenn man bei der Verbindung nichts machen kann, dann wüsste ich auch keinen Rat mehr. Vielleich kannst du ja überflüssige Dateien in dem Ordner löschen? - aber ich denke mal da sind keine überflüssigen Dateien drin?
Gruss
Chris
Anzeige
AW: Arbeitsmappen in eine neue Tabelle einlesen
16.03.2005 09:28:32
roneburger
Hi
danke für deine Hilfe. Überflüssige Dateien gibt es nicht. Dann muss ich wohl mit der Geschwindigkeit leben. Besten Dank noch mal.
Gruss
roneburger

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige