Live-Forum - Die aktuellen Beiträge
Datum
Titel
24.04.2024 19:29:30
24.04.2024 18:49:56
Anzeige
Archiv - Navigation
1264to1268
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
Inhaltsverzeichnis

Hilfe bei VBA Code

Hilfe bei VBA Code
Stange
Hallo,
ich möchte per VBA aus einem Verzeichnis Exceldateien, die gleich aufgebaut sind auslesen.
Ich habe dies auch per VBA geschafft. Sie u.a. Code.
Nun möchte ich aber dass nur die Werte eingefügt werden, da die auszulesenden Dateien Funktionen enthalten.
Weiterhin möchte ich auch, dass die geöffneten Tabellen (nachdem Einlesen) wieder automatisch geschlossen werden.
Viel Dank für eure Hilfe.
Sub DateienZusammenkopieren()
Dim Mappe As String
Dim i As Integer
'Komplette Mappe
Mappe = ActiveWorkbook.Name
Range("A2").Select
With Application.FileSearch
.NewSearch
.LookIn = "H:\A10_Stange\Tageseinsatzplan Dispo I & II\Test"
.SearchSubFolders = False
.FileType = msoFileTypeExcelWorkbooks
.Execute
For i = 1 To .FoundFiles.Count
Workbooks.Open .FoundFiles(i)
Range("A3:Q105").Copy
Workbooks(Mappe).Activate
ActiveSheet.Paste
ActiveCell.Offset(105, 0).Select
Next i
End With
Mappe = ActiveWorkbook.Name
Range("P1").Select
With Application.FileSearch
.NewSearch
.LookIn = "H:\A10_Stange\Tageseinsatzplan Dispo I & II\Test"
.SearchSubFolders = False
.FileType = msoFileTypeExcelWorkbooks
.Execute
For i = 1 To .FoundFiles.Count
Workbooks.Open .FoundFiles(i)
Range("P1").Copy
Workbooks(Mappe).Activate
ActiveSheet.Paste
ActiveCell.Offset(105, 0).Select
Next i
End With
End Sub

4
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Benutzer
Anzeige
AW: Hilfe bei VBA Code
10.06.2012 17:56:51
fcs
Hallo Stange,
mit den folgenden Anpassungen werden nur Formate und Werte übertragen.
Ich habe Excel 2010. Da gibt es "Filesearch". Deshalb konnte die Anpassung nicht testen.
Gruß
Franz
Sub DateienZusammenkopieren_neu()
Dim Mappe As Workbook, wks As Worksheet, Quelle As Workbook, wksQ As Worksheet
Dim i As Integer, ZeileA As Long, ZeileP As Long
'Komplette Mappe
Set Mappe = ActiveWorkbook
Set wks = ActiveSheet
ZeileA = 2
ZeileP = 1
Application.ScreenUpdating = False
With Application.FileSearch
.NewSearch
.LookIn = "H:\A10_Stange\Tageseinsatzplan Dispo I & II\Test"
.SearchSubFolders = False
.FileType = msoFileTypeExcelWorkbooks
.Execute
For i = 1 To .FoundFiles.Count
Set Quelle = Workbooks.Open(Filename:=.FoundFiles(i), ReadOnly:=True)
Set wksQ = ActiveSheet
wksQ.Range("A3:Q105").Copy
wks.Cells(ZeileA, 1).PasteSpecial Paste:=-4122 'xlPasteFormats
wks.Cells(ZeileA, 1).PasteSpecial Paste:=-4163 'xlPasteValues
wksQ.Range("P1").Copy
wks.Cells(ZeileP, 16).PasteSpecial Paste:=-4122 'xlPasteFormats
wks.Cells(ZeileP, 16).PasteSpecial Paste:=-4163 'xlPasteValues
ZeileA = ZeileA + 105
ZeileP = ZeileP + 105
Application.CutCopyMode = False
Quelle.Close savechanges:=False
Next i
End With
Application.ScreenUpdating = True
End Sub

Anzeige
AW: Hilfe bei VBA Code
11.06.2012 13:32:14
Stange,
Hallo Franz,
vielen Dank für deine Hilfe hat super geklappt.
super geklappt -> zu. owT
11.06.2012 14:25:53
Rudi
AW: Hilfe bei VBA Code
10.06.2012 18:00:24
Rolf
Hallo Stange,
versuch mal anstelle von ActiveSheet.Paste die Code-Zeile
ActiveSheet.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks:=False, Transpose:=False
wobei xlPasteValues eigentlich das ist, worauf es dir ankommt.
Zum Schließen aller Dateien (glaube ich):
Workbooks.Close savechanges:=True 'speichert vor dem Schließen
Workbooks.Close savechanges:=False 'Schließt die Dateien ohne zu speichern
Funktionieren sollte auf jeden Fall:
For Each Workbook In Application.Workbooks
Workbook.Close savechanges:=True 'bzw. False
Next
ggf. vorher: Application.DisplayAlerts = False
(damit nervige Anfragen seitens des elektrischen Apparates unterbunden werden)
Gruß, Rolf
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige