ich bin bei meinem unten stehenden Code leider "stecken" geblieben und bedarf eure Hilfe :(
Der Code kopiert aus einer Datei ein Bereich und fügt es in eine Tabelle wieder ein.
Problem: Es wird als Funktion eingefügt. D.h. in der neuen Dateien erscheinen die Formeln der Ursprungsdatei. Ich will alerdings nur die Werte haben.
Meint ihr das dies möglich ist?
Gruß!
Public Sub Daten_mehrerer_Dateien_konsolidieren()
On Error GoTo errExit
Dim WBQ As Workbook
Dim WBZ As Workbook
Dim varDateien As Variant
Dim lngAnzahl As Long
Dim lngLastQ As Long
Dim i As Long
Set WBZ = ActiveWorkbook
WBZ.Worksheets(1).Range("A3:V65536").ClearContents
varDateien = _
Application.GetOpenFilename("Datei (*.xlsx),*.xlsx", False, "Bitte gewünschte Datei(en) _
markieren", False, True)
With Application
.ScreenUpdating = False
.EnableEvents = False
.Calculation = xlCalculationManual
End With
For lngAnzahl = LBound(varDateien) To UBound(varDateien)
Set WBQ = Workbooks.Open(Filename:=varDateien(lngAnzahl))
lngLastQ = WBQ.Worksheets(1).Range("A65536").End(xlUp).Row
WBQ.Worksheets(1).Range("B3:W" & lngLastQ).Copy _
Destination:=WBZ.Worksheets(1).Range("A" & WBZ.Worksheets(1).Range("V65536").End(xlUp).Row + _
1)
WBQ.Close
Next
With Application
.ScreenUpdating = True
.EnableEvents = True
.Calculation = xlCalculationAutomatic
End With
MsgBox "Es wurden " & UBound(varDateien) & " Dateien zusammengefügt.", 64
Exit Sub
errExit:
With Application
.ScreenUpdating = True
.EnableEvents = True
.Calculation = xlCalculationAutomatic
End With
If Err.Number = 13 Then
MsgBox "Es wurde keine Datei ausgewählt"
Else
MsgBox "Es ist ein Fehler aufgetreten!" & vbCr _
& "Fehlernummer: " & Err.Number & vbCr _
& "Fehlerbeschreibung: " & Err.Description
End If
With Sheets("Konsolidierung")
For i = 400 To 1 Step -1
If .Cells(i, 1) = "" Then Rows(i).Delete
Next
End With
End Sub