Geschlossene Datei - Worksheet_Change...

Frage: Ich habe eine zentrale Exceldatei. Im gleichen Ordner befinden sich viele Firmendateien (*.xlsx). Bei Eingabe des Firmennamens (Datei hat den gleichen Namen) in B3 soll der Wert aus "Tabelle1" "C1" in der zentralen Datei in "D3" ausgegeben werden. Wie geht das?

Hier noch eine Beispieldatei: Geschlossene - Datei - Worksheet_Change

Option Explicit
' Aus der Tabelle wird ausgelesen
Const strSheet As String = "Tabelle1"
' Diese Zelle wird ausgelesen
Const strCell As String = "C1"
' Das ist die Endung der auszulesenden Datei
Const strEx As String = ".xlsx"
Private Sub Worksheet_Change(ByVal Target As Range)
    Dim strPath As String
    Dim strFile As String
    On Error GoTo Fin
    Application.EnableEvents = False
    strPath = ThisWorkbook.Path & Application.PathSeparator
    If Not Target.Count > 1 Then
        If Not Intersect(Target, Range("B3")) Is Nothing Then
            If Trim(Target.Value) <> "" Then
                If Dir(strPath & Trim(Target.Value) & strEx) <> "" Then
                    With Me.Range("D3")
                        .Formula = "='" & strPath & _
                            "[" & Target.Value & strEx & "]" & _
                            strSheet & "'!" & strCell
                        .Value = .Value
                    End With
                Else
                    MsgBox "Datei nicht vorhanden!"
                    Me.Range("B3").ClearContents
                    Me.Range("D3").ClearContents
                End If
            Else
                Me.Range("D3").ClearContents
            End If
        End If
    End If
Fin:
    Application.EnableEvents = True
    If Err.Number <> 0 Then MsgBox "Fehler: " & _
        Err.Number & " " & Err.Description
End Sub

Beliebte Posts aus diesem Blog

Formeln - auch Array - per VBA eintragen...

Alle Dateien eines Ordners - Optional mit Unterordner

Excel -> Word in Textmarken (Bookmarks)...