08.12.2019, 13:03
Hallo, ich mal wieder
Folgende Function:
Wie kann ich einen Test einbauen, ob das SourceSheet in der externen Datei vorhanden ist?
Ist es nämlich nicht vorhanden, bekomme ich die Aufforderung in Excel ein Tabellenblatt auszusuchen. Da dieses aber dann in der Datei nicht vorhanden ist, klicke ich auf Abbrechen und bekomme #BEZUG! - Das würde ich gerne durch die Abfrage vorher verhindern.
Grüße
Folgende Function:
Code:
Public Function GetDataClosedWB(SourcePath As String, _
SourceFile As String, sourceSheet As String, _
SourceRange As String, TargetRange As Range) As Boolean
Dim strQuelle As String
Dim Zeilen As Long
Dim Spalten As Byte
On Error GoTo InvalidInput
strQuelle = "'" & SourcePath & "[" & SourceFile & "]" & sourceSheet & "'!" & Range(SourceRange).Cells(1, 1).Address(0, 0)
Zeilen = Range(SourceRange).Rows.Count
Spalten = Range(SourceRange).Columns.Count
With TargetRange.Cells(1, 1).Resize(Zeilen, Spalten)
.Formula = "=IF(" & strQuelle & "="""",""""," & strQuelle & ")"
.Value = .Value
End With
GetDataClosedWB = True
Exit Function
InvalidInput:
GetDataClosedWB = False
MsgBox "Die Quelldatei oder der Quellbereich ist ungültig!", vbExclamation, "Get data from closed Workbook"
End Function
Sub test()
..
If GetDataClosedWB(Pfad, _
Dateiname, _
Blatt, _
Zellen, _
Ziel) Then
End If
End Sub
Wie kann ich einen Test einbauen, ob das SourceSheet in der externen Datei vorhanden ist?
Ist es nämlich nicht vorhanden, bekomme ich die Aufforderung in Excel ein Tabellenblatt auszusuchen. Da dieses aber dann in der Datei nicht vorhanden ist, klicke ich auf Abbrechen und bekomme #BEZUG! - Das würde ich gerne durch die Abfrage vorher verhindern.
Grüße