Top-Themen

AppleEntwicklungHardwareInternetLinuxMicrosoftMultimediaNetzwerkeOff TopicSicherheitSonstige SystemeVirtualisierungWeiterbildungZusammenarbeit

Aktuelle Themen

Administrator.de FeedbackApache ServerAppleAssemblerAudioAusbildungAuslandBackupBasicBatch & ShellBenchmarksBibliotheken & ToolkitsBlogsCloud-DiensteClusterCMSCPU, RAM, MainboardsCSSC und C++DatenbankenDatenschutzDebianDigitiales FernsehenDNSDrucker und ScannerDSL, VDSLE-BooksE-BusinessE-MailEntwicklungErkennung und -AbwehrExchange ServerFestplatten, SSD, RaidFirewallFlatratesGoogle AndroidGrafikGrafikkarten & MonitoreGroupwareHardwareHosting & HousingHTMLHumor (lol)Hyper-VIconsIDE & EditorenInformationsdiensteInstallationInstant MessagingInternetInternet DomäneniOSISDN & AnaloganschlüsseiTunesJavaJavaScriptKiXtartKVMLAN, WAN, WirelessLinuxLinux DesktopLinux NetzwerkLinux ToolsLinux UserverwaltungLizenzierungMac OS XMicrosoftMicrosoft OfficeMikroTik RouterOSMonitoringMultimediaMultimedia & ZubehörNetzwerkeNetzwerkgrundlagenNetzwerkmanagementNetzwerkprotokolleNotebook & ZubehörNovell NetwareOff TopicOpenOffice, LibreOfficeOutlook & MailPapierkorbPascal und DelphiPeripheriegerätePerlPHPPythonRechtliche FragenRedHat, CentOS, FedoraRouter & RoutingSambaSAN, NAS, DASSchriftartenSchulung & TrainingSEOServerServer-HardwareSicherheitSicherheits-ToolsSicherheitsgrundlagenSolarisSonstige SystemeSoziale NetzwerkeSpeicherkartenStudentenjobs & PraktikumSuche ProjektpartnerSuseSwitche und HubsTipps & TricksTK-Netze & GeräteUbuntuUMTS, EDGE & GPRSUtilitiesVB for ApplicationsVerschlüsselung & ZertifikateVideo & StreamingViren und TrojanerVirtualisierungVisual StudioVmwareVoice over IPWebbrowserWebentwicklungWeiterbildungWindows 7Windows 8Windows 10Windows InstallationWindows MobileWindows NetzwerkWindows ServerWindows SystemdateienWindows ToolsWindows UpdateWindows UserverwaltungWindows VistaWindows XPXenserverXMLZusammenarbeit
GELÖST

per VBA Makro mehrere Excel Dateien auf einmal öffnen - importieren - konsolidieren

Frage Microsoft Microsoft Office

Mitglied: Shaggy84

Shaggy84 (Level 1) - Jetzt verbinden

16.04.2008, aktualisiert 23.04.2008, 20121 Aufrufe, 1 Kommentar

Hallo Forum Team,

habe eine direkt Frage für meinen Programmstart.

Ich möchte direkt aus einem bestimmten Ordner mehrere dort verlinkte Excel Dateien öffnen und meiner Excel Datei hin zu fügen.

Normalerweise geschieht dies ja mit dem Code (Auszug):
01.
Application.Dialogs(xlDialogOpen).Show 'öffne Quelldatei 
02.
Worksheets(1).Range("1:65535").Copy 'kopiere alles 
03.
Ziel.Worksheets(2).Activate 
04.
Ziel.Worksheets(2).Range("1:65535").PasteSpecial _ 
05.
Paste:=xlPasteValues 'fügt Daten in Zieltabelle ein
Nun sind es aber zig Excel Dateien die alle gleich aufgebaut sind. Ich kann die nicht alle über den Datei öffnen Dialog einzeln öffnen...
Gibt es eine Möglichkeit (nach dem *.* Prinzip) alle Dateien nach und nach automatisch laden zu können?

Grüße
Mitglied: Shaggy84
23.04.2008 um 14:41 Uhr
Hallo Administrator Forum,

habe mein Problem jetzt anders gelöst, nämlich mit einer Liste.

Grundvoraussetzung, die Dateinamen sollten möglich einfach sein und sich nicht ständig ändern.

- eine Zelle für den Pfad angelegt
- mehrere Zellen untereinander für den Dateinamen
[- mehrere Zellen daneben untereinander für den Dateityp, in meinem Fall nötig, da sowohl Links *.lnk als auch Dateien *.xls existieren. Hier mit einer Listenfunktion]

Hier der Programmauszug:
01.
'Definitionen 
02.
Pfad = Worksheets(1).Cells(6, 3) 
03.
Zaehler = 6 'Anfang der Dateiliste 
04.
Listenende = IIf(IsEmpty(Range("I65536")), Range("I65536").End(xlUp).Row, 65536) 'Ende der Dateiliste 
05.
 
06.
'Lade aus Liste Datei für Datei ein 
07.
Do Until Zaehler = Listenende + 1 
08.
    Worksheets(2).Cells.Clear 
09.
    Datei = Worksheets(1).Cells(Zaehler, 9) 'Einlesen des Dateinamens aus Liste 
10.
 
11.
    'Lese Dateiendung aus Liste 
12.
    If Worksheets(1).Cells(Zaehler, 10) = Worksheets(1).Cells(4, 12) Then  'variables Einlesen der Endung 
13.
        Endung = ".lnk" 
14.
    End If 
15.
    If Worksheets(1).Cells(Zaehler, 10) = Worksheets(1).Cells(5, 12) Then 
16.
        Endung = ".xls" 
17.
    End If 
18.
     
19.
   'erstelle Dateipfad 
20.
    On Error Resume Next 
21.
    Dateipfad = Pfad + Datei + Endung 
22.
    s = Dir(Dateipfad) 
23.
    If s <> "" Then 
24.
     
25.
        Workbooks.Open Pfad + Datei + Endung 'Dateipfadzusammenstellung 
26.
     
27.
       'kopieren 
28.
        Worksheets(3).Activate 
29.
        Letzte = IIf(IsEmpty(Range("F65536")), Range("F65536").End(xlUp).Row, 65536) 
30.
        Worksheets(3).Range(Cells(6, 1), Cells(Letzte, 35)).Copy 'Importbereich 
31.
 
32.
       'einfügen 
33.
        Ziel.Worksheets(2).Activate 
34.
        Ziel.Worksheets(2).Range("1:65536").PasteSpecial _ 
35.
        Paste:=xlPasteValues 'fügt Daten in Zwischenablage ein 
36.
     
37.
    'Abfangen von Fehlern 
38.
    Else: MsgBox "Datei " & Dateipfad & " existiert nicht! Schreibfehler oder falsche Dateiart?", vbExclamation 
39.
    i = i + 1 
40.
End If 
41.
 
42.
    Application.Run "CheckLines" 
43.
    Zaehler = Zaehler + 1 
44.
    Workbooks(Datei + Endung).Close SaveChanges:=False 'schließe offene Dateien 
45.
Loop
Achten, dass der Pfad mit einem "\" enden muss. Mit "CheckLines" werden die Dateien in einem weiterem Tabellenblatt untereinander kopiert. Hier werden Sie ja immer wieder überschrieben.

Grüße
Bitte warten ..
Neuester Wissensbeitrag
Windows 10

Powershell 5 BSOD

(8)

Tipp von agowa338 zum Thema Windows 10 ...

Ähnliche Inhalte
Microsoft Office
gelöst CSV-Datei mit einem VBA Makro in Excel einlesen und leicht anpassen (5)

Frage von JoSiBa zum Thema Microsoft Office ...

Microsoft Office
Mehr als 20 Excel Dateien öffnen gleichzeitig (7)

Frage von PizzaPepperoni zum Thema Microsoft Office ...

VB for Applications
gelöst Mehrere CSV Dateien aus verschiedenen Ordner einlesen via VBA (12)

Frage von mtufangil zum Thema VB for Applications ...

Heiß diskutierte Inhalte
Microsoft
Ordner mit LW-Buchstaben versehen und benennen (21)

Frage von Xaero1982 zum Thema Microsoft ...

Netzwerkmanagement
gelöst Anregungen, kleiner Betrieb, IT-Umgebung (18)

Frage von Unwichtig zum Thema Netzwerkmanagement ...

Windows Update
Treiberinstallation durch Windows Update läßt sich nicht verhindern (14)

Frage von liquidbase zum Thema Windows Update ...

DSL, VDSL
Problem mit variernder Internetgeschwindigkeit (12)

Frage von schaurian zum Thema DSL, VDSL ...